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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:30:"Hook_choose_catalogue_category";s:7:"comment";b:1;}s:27:"Hook_choose_catalogue_entry";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/ajax_tree/choose_catalogue_entry.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:58:"sources/hooks/systems/ajax_tree/choose_catalogue_entry.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:27:"Hook_choose_catalogue_entry";s:7:"comment";b:1;}s:34:"Hook_choose_composr_homesite_addon";a:3:{s:9:"functions";a:3:{s:8:"get_file";a:6:{s:8:"filename";s:65:"sources/hooks/systems/ajax_tree/choose_composr_homesite_addon.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:8:"?ID_TEXT";s:11:"description";s:31:"The ID to do under (null: root)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:8:"get_file";s:11:"description";s:41:"This will get the XML file from compo.sr.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"The XML file";}}s:3:"run";a:6:{s:8:"filename";s:65:"sources/hooks/systems/ajax_tree/choose_composr_homesite_addon.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:65:"sources/hooks/systems/ajax_tree/choose_composr_homesite_addon.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: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";}i:3;a:7:{s:4:"name";s:6:"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:23:"Prefix titles with this";s:11:"phpdoc_name";s:6:"prefix";}}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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:34:"Hook_choose_composr_homesite_addon";s:7:"comment";b:1;}s:20:"Hook_choose_download";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ajax_tree/choose_download.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:51:"sources/hooks/systems/ajax_tree/choose_download.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:20:"Hook_choose_download";s:7:"comment";b:1;}s:29:"Hook_choose_download_category";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/ajax_tree/choose_download_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:60:"sources/hooks/systems/ajax_tree/choose_download_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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:29:"Hook_choose_download_category";s:7:"comment";b:1;}s:25:"Hook_choose_filedump_file";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/ajax_tree/choose_filedump_file.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:56:"sources/hooks/systems/ajax_tree/choose_filedump_file.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:25:"Hook_choose_filedump_file";s:7:"comment";b:1;}s:17:"Hook_choose_forum";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ajax_tree/choose_forum.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:48:"sources/hooks/systems/ajax_tree/choose_forum.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:17:"Hook_choose_forum";s:7:"comment";b:1;}s:19:"Hook_choose_gallery";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/ajax_tree/choose_gallery.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:50:"sources/hooks/systems/ajax_tree/choose_gallery.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:19:"Hook_choose_gallery";s:7:"comment";b:1;}s:17:"Hook_choose_image";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ajax_tree/choose_image.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:48:"sources/hooks/systems/ajax_tree/choose_image.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:17:"Hook_choose_image";s:7:"comment";b:1;}s:17:"Hook_choose_topic";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ajax_tree/choose_topic.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:48:"sources/hooks/systems/ajax_tree/choose_topic.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:17:"Hook_choose_topic";s:7:"comment";b:1;}s:17:"Hook_choose_video";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ajax_tree/choose_video.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:48:"sources/hooks/systems/ajax_tree/choose_video.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:17:"Hook_choose_video";s:7:"comment";b:1;}s:21:"Hook_choose_wiki_page";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/ajax_tree/choose_wiki_page.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:52:"sources/hooks/systems/ajax_tree/choose_wiki_page.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:21:"Hook_choose_wiki_page";s:7:"comment";b:1;}s:23:"Hook_attachments_author";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/attachments/author.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:23:"Hook_attachments_author";s:7:"comment";b:1;}s:25:"Hook_attachments_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/attachments/calendar.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:25:"Hook_attachments_calendar";s:7:"comment";b:1;}s:32:"Hook_attachments_catalogue_entry";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/attachments/catalogue_entry.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:32:"Hook_attachments_catalogue_entry";s:7:"comment";b:1;}s:25:"Hook_attachments_cns_post";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/attachments/cns_post.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:25:"Hook_attachments_cns_post";s:7:"comment";b:1;}s:30:"Hook_attachments_cns_signature";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/attachments/cns_signature.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:30:"Hook_attachments_cns_signature";s:7:"comment";b:1;}s:29:"Hook_attachments_comcode_page";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/attachments/comcode_page.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:29:"Hook_attachments_comcode_page";s:7:"comment";b:1;}s:21:"Hook_attachments_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/attachments/news.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:21:"Hook_attachments_news";s:7:"comment";b:1;}s:21:"Hook_attachments_null";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/attachments/null.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:21:"Hook_attachments_null";s:7:"comment";b:1;}s:26:"Hook_attachments_wiki_page";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/attachments/wiki_page.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:26:"Hook_attachments_wiki_page";s:7:"comment";b:1;}s:26:"Hook_attachments_wiki_post";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/attachments/wiki_post.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:26:"Hook_attachments_wiki_post";s:7:"comment";b:1;}s:30:"Hook_block_ui_renderers_awards";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:51:"sources/hooks/systems/block_ui_renderers/awards.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:30:"Hook_block_ui_renderers_awards";s:7:"comment";b:1;}s:31:"Hook_block_ui_renderers_banners";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:52:"sources/hooks/systems/block_ui_renderers/banners.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:31:"Hook_block_ui_renderers_banners";s:7:"comment";b:1;}s:34:"Hook_block_ui_renderers_catalogues";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:55:"sources/hooks/systems/block_ui_renderers/catalogues.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:34:"Hook_block_ui_renderers_catalogues";s:7:"comment";b:1;}s:28:"Hook_block_ui_renderers_chat";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:49:"sources/hooks/systems/block_ui_renderers/chat.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:28:"Hook_block_ui_renderers_chat";s:7:"comment";b:1;}s:33:"Hook_block_ui_renderers_galleries";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:54:"sources/hooks/systems/block_ui_renderers/galleries.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:33:"Hook_block_ui_renderers_galleries";s:7:"comment";b:1;}s:28:"Hook_block_ui_renderers_news";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:49:"sources/hooks/systems/block_ui_renderers/news.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:28:"Hook_block_ui_renderers_news";s:7:"comment";b:1;}s:35:"Hook_block_ui_renderers_newsletters";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:56:"sources/hooks/systems/block_ui_renderers/newsletters.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:35:"Hook_block_ui_renderers_newsletters";s:7:"comment";b:1;}s:29:"Hook_block_ui_renderers_polls";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:50:"sources/hooks/systems/block_ui_renderers/polls.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:29:"Hook_block_ui_renderers_polls";s:7:"comment";b:1;}s:29:"Hook_change_detection_tickets";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/change_detection/tickets.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:42:"The sample data, serialised and then MD5'd";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:3:"run";s:11:"description";s:114:"Run function for change_detection hooks. They see if their own something has changed in comparison to sample data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether the something has changed";}}}s:4:"name";s:29:"Hook_change_detection_tickets";s:7:"comment";b:1;}s:19:"Hook_check_base_url";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/checks/base_url.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:19:"Hook_check_base_url";s:7:"comment";b:1;}s:25:"Hook_check_directory_name";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/checks/directory_name.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:25:"Hook_check_directory_name";s:7:"comment";b:1;}s:21:"Hook_check_disk_space";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/checks/disk_space.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:21:"Hook_check_disk_space";s:7:"comment";b:1;}s:23:"Hook_check_file_uploads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/checks/file_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:23:"Hook_check_file_uploads";s:7:"comment";b:1;}s:27:"Hook_check_functions_needed";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/checks/functions_needed.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:27:"Hook_check_functions_needed";s:7:"comment";b:1;}s:13:"Hook_check_gd";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:35:"sources/hooks/systems/checks/gd.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:13:"Hook_check_gd";s:7:"comment";b:1;}s:29:"Hook_check_max_execution_time";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/checks/max_execution_time.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:29:"Hook_check_max_execution_time";s:7:"comment";b:1;}s:25:"Hook_check_max_input_vars";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/checks/max_input_vars.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:25:"Hook_check_max_input_vars";s:7:"comment";b:1;}s:28:"Hook_check_mbstring_overload";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/checks/mbstring_overload.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:28:"Hook_check_mbstring_overload";s:7:"comment";b:1;}s:17:"Hook_check_memory";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/checks/memory.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:17:"Hook_check_memory";s:7:"comment";b:1;}s:22:"Hook_check_modsecurity";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/checks/modsecurity.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:22:"Hook_check_modsecurity";s:7:"comment";b:1;}s:24:"Hook_check_mysql_version";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/checks/mysql_version.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:24:"Hook_check_mysql_version";s:7:"comment";b:1;}s:23:"Hook_check_no_ad_script";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/checks/no_ad_script.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:23:"Hook_check_no_ad_script";s:7:"comment";b:1;}s:32:"Hook_check_normative_performance";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/checks/normative_performance.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:32:"Hook_check_normative_performance";s:7:"comment";b:1;}s:22:"Hook_check_php_version";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/checks/php_version.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:22:"Hook_check_php_version";s:7:"comment";b:1;}s:23:"Hook_check_suhosin_eval";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/checks/suhosin_eval.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:23:"Hook_check_suhosin_eval";s:7:"comment";b:1;}s:16:"Hook_check_unzip";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/checks/unzip.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:16:"Hook_check_unzip";s:7:"comment";b:1;}s:14:"Hook_check_utf";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:36:"sources/hooks/systems/checks/utf.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:14:"Hook_check_utf";s:7:"comment";b:1;}s:14:"Hook_check_xml";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:36:"sources/hooks/systems/checks/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:14:"Hook_check_xml";s:7:"comment";b:1;}s:31:"Hook_cleanup_admin_theme_images";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:52:"sources/hooks/systems/cleanup/admin_theme_images.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/cleanup/admin_theme_images.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:31:"Hook_cleanup_admin_theme_images";s:7:"comment";b:1;}s:19:"Hook_cleanup_blocks";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:40:"sources/hooks/systems/cleanup/blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/cleanup/blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:19:"Hook_cleanup_blocks";s:7:"comment";b:1;}s:24:"Hook_cleanup_broken_urls";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:45:"sources/hooks/systems/cleanup/broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/cleanup/broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:24:"Hook_cleanup_broken_urls";s:7:"comment";b:1;}s:16:"Hook_cleanup_cns";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/hooks/systems/cleanup/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/hooks/systems/cleanup/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:16:"Hook_cleanup_cns";s:7:"comment";b:1;}s:24:"Hook_cleanup_cns_members";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:45:"sources/hooks/systems/cleanup/cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/cleanup/cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:24:"Hook_cleanup_cns_members";s:7:"comment";b:1;}s:23:"Hook_cleanup_cns_topics";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cleanup/cns_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cleanup/cns_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:23:"Hook_cleanup_cns_topics";s:7:"comment";b:1;}s:20:"Hook_cleanup_comcode";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:41:"sources/hooks/systems/cleanup/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/cleanup/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:20:"Hook_cleanup_comcode";s:7:"comment";b:1;}s:26:"Hook_cleanup_comcode_pages";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cleanup/comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cleanup/comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:26:"Hook_cleanup_comcode_pages";s:7:"comment";b:1;}s:35:"Hook_cleanup_criticise_mysql_fields";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:56:"sources/hooks/systems/cleanup/criticise_mysql_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/cleanup/criticise_mysql_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:35:"Hook_cleanup_criticise_mysql_fields";s:7:"comment";b:1;}s:25:"Hook_cleanup_image_thumbs";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/image_thumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/image_thumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}s:22:"directory_thumb_mirror";a:5:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/image_thumbs.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:6:"string";s:11:"description";s:19:"Directory to mirror";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:22:"directory_thumb_mirror";s:11:"description";s:105:"Create filename-mirrored thumbnails for the given directory stub (mirrors stub/foo with stub_thumbs/foo).";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Hook_cleanup_image_thumbs";s:7:"comment";b:1;}s:21:"Hook_cleanup_language";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/systems/cleanup/language.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/cleanup/language.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:21:"Hook_cleanup_language";s:7:"comment";b:1;}s:30:"Hook_cleanup_lost_disk_content";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/cleanup/lost_disk_content.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/cleanup/lost_disk_content.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:30:"Hook_cleanup_lost_disk_content";s:7:"comment";b:1;}s:27:"Hook_cleanup_mysql_optimise";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/systems/cleanup/mysql_optimise.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/cleanup/mysql_optimise.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:27:"Hook_cleanup_mysql_optimise";s:7:"comment";b:1;}s:34:"Hook_cleanup_orphaned_lang_strings";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:55:"sources/hooks/systems/cleanup/orphaned_lang_strings.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/cleanup/orphaned_lang_strings.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:34:"Hook_cleanup_orphaned_lang_strings";s:7:"comment";b:1;}s:29:"Hook_cleanup_orphaned_uploads";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/cleanup/orphaned_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/cleanup/orphaned_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_cleanup_orphaned_uploads";s:7:"comment";b:1;}s:25:"Hook_cleanup_page_backups";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/page_backups.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/page_backups.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}s:7:"process";a:5:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/page_backups.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:4:"Path";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:7:"process";s:11:"description";s:59:"Move revision files from the given path, to a subdirectory.";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Hook_cleanup_page_backups";s:7:"comment";b:1;}s:23:"Hook_cleanup_page_stats";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cleanup/page_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cleanup/page_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:23:"Hook_cleanup_page_stats";s:7:"comment";b:1;}s:26:"Hook_cleanup_self_learning";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cleanup/self_learning.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cleanup/self_learning.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:26:"Hook_cleanup_self_learning";s:7:"comment";b:1;}s:18:"Hook_cleanup_stats";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:39:"sources/hooks/systems/cleanup/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/cleanup/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:18:"Hook_cleanup_stats";s:7:"comment";b:1;}s:17:"Hook_cleanup_tags";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cleanup/tags.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cleanup/tags.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:17:"Hook_cleanup_tags";s:7:"comment";b:1;}s:22:"Hook_cleanup_templates";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/systems/cleanup/templates.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/cleanup/templates.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:22:"Hook_cleanup_templates";s:7:"comment";b:1;}s:17:"Hook_cleanup_urls";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cleanup/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cleanup/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:17:"Hook_cleanup_urls";s:7:"comment";b:1;}s:17:"Hook_cns_auth_aef";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cns_auth/aef.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:17:"Hook_cns_auth_aef";s:7:"comment";b:1;}s:22:"Hook_cns_auth_converge";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:43:"sources/hooks/systems/cns_auth/converge.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:22:"Hook_cns_auth_converge";s:7:"comment";b:1;}s:20:"Hook_cns_auth_phpbb3";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:41:"sources/hooks/systems/cns_auth/phpbb3.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:20:"Hook_cns_auth_phpbb3";s:7:"comment";b:1;}s:17:"Hook_cns_auth_smf";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cns_auth/smf.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:17:"Hook_cns_auth_smf";s:7:"comment";b:1;}s:17:"Hook_cns_auth_vb3";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cns_auth/vb3.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:17:"Hook_cns_auth_vb3";s:7:"comment";b:1;}s:29:"Hook_cns_cpf_filter_ecommerce";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:50:"sources/hooks/systems/cns_cpf_filter/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:29:"Hook_cns_cpf_filter_ecommerce";s:7:"comment";b:1;}s:33:"Hook_cns_cpf_filter_notifications";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:54:"sources/hooks/systems/cns_cpf_filter/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:33:"Hook_cns_cpf_filter_notifications";s:7:"comment";b:1;}s:27:"Hook_cns_cpf_filter_options";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:48:"sources/hooks/systems/cns_cpf_filter/options.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:27:"Hook_cns_cpf_filter_options";s:7:"comment";b:1;}s:26:"Hook_cns_cpf_filter_points";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cns_cpf_filter/points.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:26:"Hook_cns_cpf_filter_points";s:7:"comment";b:1;}s:31:"Hook_cns_cpf_filter_points_chat";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:52:"sources/hooks/systems/cns_cpf_filter/points_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:31:"Hook_cns_cpf_filter_points_chat";s:7:"comment";b:1;}s:31:"Hook_cns_cpf_filter_points_wiki";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:52:"sources/hooks/systems/cns_cpf_filter/points_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:31:"Hook_cns_cpf_filter_points_wiki";s:7:"comment";b:1;}s:33:"Hook_cns_cpf_filter_shopping_cart";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:54:"sources/hooks/systems/cns_cpf_filter/shopping_cart.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:33:"Hook_cns_cpf_filter_shopping_cart";s:7:"comment";b:1;}s:23:"Hook_cns_cpf_filter_sms";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cns_cpf_filter/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:23:"Hook_cns_cpf_filter_sms";s:7:"comment";b:1;}s:32:"Hook_cns_cpf_filter_staff_filter";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:53:"sources/hooks/systems/cns_cpf_filter/staff_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:32:"Hook_cns_cpf_filter_staff_filter";s:7:"comment";b:1;}s:41:"Hook_comcode_link_handler_media_rendering";a:3:{s:9:"functions";a:1:{s:4:"bind";a:6:{s:8:"filename";s:63:"sources/hooks/systems/comcode_link_handlers/media_rendering.php";s:10:"parameters";a:11:{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:21:"Link to use or reject";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:17:"comcode_dangerous";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether we are allowed to proceed even if this tag is marked as 'dangerous'";s:11:"phpdoc_name";s:17:"comcode_dangerous";}i:2;a:5:{s:4:"name";s:7:"pass_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:100:"A special identifier to mark where the resultant Tempcode is going to end up (e.g. the ID of a post)";s:11:"phpdoc_name";s:7:"pass_id";}i:3;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The position this tag occurred at in the Comcode";s:11:"phpdoc_name";s:3:"pos";}i:4;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:6;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:7;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The whole chunk of Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:8;a:5:{s:4:"name";s:15:"structure_sweep";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is only a structure sweep";s:11:"phpdoc_name";s:15:"structure_sweep";}i:9;a:5:{s:4:"name";s:14:"semiparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether we are in semi-parse-mode (some tags might convert differently)";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:10;a:5:{s:4:"name";s:14:"highlight_bits";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:41:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}}s:4:"name";s:4:"bind";s:11:"description";s:115:"Bind function for Comcode link handler hooks. They see if they can bind a pasted URL to a lump of handler Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:61:"Handled link (null: reject due to inappropriate link pattern)";}}}s:4:"name";s:41:"Hook_comcode_link_handler_media_rendering";s:7:"comment";b:1;}s:33:"Hook_commandr_command_alien_check";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_commands/alien_check.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:33:"Hook_commandr_command_alien_check";s:7:"comment";b:1;}s:36:"Hook_commandr_command_antispam_check";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_commands/antispam_check.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:36:"Hook_commandr_command_antispam_check";s:7:"comment";b:1;}s:28:"Hook_commandr_command_append";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/append.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:28:"Hook_commandr_command_append";s:7:"comment";b:1;}s:28:"Hook_commandr_command_ban_ip";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/ban_ip.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:28:"Hook_commandr_command_ban_ip";s:7:"comment";b:1;}s:32:"Hook_commandr_command_ban_member";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/commandr_commands/ban_member.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:73:"Array of stdcommand, stdhtml, stdout, and stderr responses (false: error)";}}}s:4:"name";s:32:"Hook_commandr_command_ban_member";s:7:"comment";b:1;}s:26:"Hook_commandr_command_bsod";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/bsod.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_bsod";s:7:"comment";b:1;}s:26:"Hook_commandr_command_call";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/call.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_call";s:7:"comment";b:1;}s:25:"Hook_commandr_command_cat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_commands/cat.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:25:"Hook_commandr_command_cat";s:7:"comment";b:1;}s:24:"Hook_commandr_command_cd";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/cd.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_cd";s:7:"comment";b:1;}s:33:"Hook_commandr_command_check_perms";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_commands/check_perms.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:33:"Hook_commandr_command_check_perms";s:7:"comment";b:1;}s:27:"Hook_commandr_command_clear";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/clear.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_clear";s:7:"comment";b:1;}s:34:"Hook_commandr_command_clear_caches";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/commandr_commands/clear_caches.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:34:"Hook_commandr_command_clear_caches";s:7:"comment";b:1;}s:28:"Hook_commandr_command_closed";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/closed.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:28:"Hook_commandr_command_closed";s:7:"comment";b:1;}s:34:"Hook_commandr_command_commandrchat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/commandr_commands/commandrchat.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:34:"Hook_commandr_command_commandrchat";s:7:"comment";b:1;}s:30:"Hook_commandr_command_commands";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_commands/commands.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:30:"Hook_commandr_command_commands";s:7:"comment";b:1;}s:37:"Hook_commandr_command_continue_import";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/commandr_commands/continue_import.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:37:"Hook_commandr_command_continue_import";s:7:"comment";b:1;}s:24:"Hook_commandr_command_cp";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/cp.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_cp";s:7:"comment";b:1;}s:27:"Hook_commandr_command_cpdir";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/cpdir.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_cpdir";s:7:"comment";b:1;}s:38:"Hook_commandr_command_database_upgrade";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_commands/database_upgrade.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:38:"Hook_commandr_command_database_upgrade";s:7:"comment";b:1;}s:26:"Hook_commandr_command_date";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/date.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_date";s:7:"comment";b:1;}s:31:"Hook_commandr_command_db_search";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_commands/db_search.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:31:"Hook_commandr_command_db_search";s:7:"comment";b:1;}s:15:"Hook_deep_clean";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/commandr_commands/deep_clean.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:15:"Hook_deep_clean";s:7:"comment";b:1;}s:37:"Hook_commandr_command_directory_sizes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/commandr_commands/directory_sizes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:37:"Hook_commandr_command_directory_sizes";s:7:"comment";b:1;}s:26:"Hook_commandr_command_echo";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/echo.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_echo";s:7:"comment";b:1;}s:26:"Hook_commandr_command_edit";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/edit.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_edit";s:7:"comment";b:1;}s:26:"Hook_commandr_command_exit";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/exit.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_exit";s:7:"comment";b:1;}s:34:"Hook_commandr_command_feed_display";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/commandr_commands/feed_display.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:34:"Hook_commandr_command_feed_display";s:7:"comment";b:1;}s:30:"Hook_commandr_command_feedback";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_commands/feedback.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:30:"Hook_commandr_command_feedback";s:7:"comment";b:1;}s:26:"Hook_commandr_command_find";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/find.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_find";s:7:"comment";b:1;}s:32:"Hook_commandr_command_find_codes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/commandr_commands/find_codes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:32:"Hook_commandr_command_find_codes";s:7:"comment";b:1;}s:54:"Hook_commandr_command_find_commandr_fs_filename_via_id";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_commands/find_commandr_fs_filename_via_id.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:54:"Hook_commandr_command_find_commandr_fs_filename_via_id";s:7:"comment";b:1;}s:39:"Hook_commandr_command_find_entry_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/find_entry_points.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_find_entry_points";s:7:"comment";b:1;}s:38:"Hook_commandr_command_find_guid_via_id";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_commands/find_guid_via_id.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:38:"Hook_commandr_command_find_guid_via_id";s:7:"comment";b:1;}s:54:"Hook_commandr_command_find_id_via_commandr_fs_filename";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_commands/find_id_via_commandr_fs_filename.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:54:"Hook_commandr_command_find_id_via_commandr_fs_filename";s:7:"comment";b:1;}s:38:"Hook_commandr_command_find_id_via_guid";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_commands/find_id_via_guid.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:38:"Hook_commandr_command_find_id_via_guid";s:7:"comment";b:1;}s:39:"Hook_commandr_command_find_id_via_label";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/find_id_via_label.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_find_id_via_label";s:7:"comment";b:1;}s:39:"Hook_commandr_command_find_label_via_id";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/find_label_via_id.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_find_label_via_id";s:7:"comment";b:1;}s:31:"Hook_commandr_command_fix_perms";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_commands/fix_perms.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:31:"Hook_commandr_command_fix_perms";s:7:"comment";b:1;}s:26:"Hook_commandr_command_give";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/give.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_give";s:7:"comment";b:1;}s:26:"Hook_commandr_command_grep";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/grep.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_grep";s:7:"comment";b:1;}s:26:"Hook_commandr_command_help";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/help.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_help";s:7:"comment";b:1;}s:37:"Hook_commandr_command_integrity_check";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/commandr_commands/integrity_check.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:37:"Hook_commandr_command_integrity_check";s:7:"comment";b:1;}s:24:"Hook_commandr_command_ls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/ls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_ls";s:7:"comment";b:1;}s:27:"Hook_commandr_command_mkdir";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/mkdir.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_mkdir";s:7:"comment";b:1;}s:24:"Hook_commandr_command_mv";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/mv.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_mv";s:7:"comment";b:1;}s:27:"Hook_commandr_command_mvdir";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/mvdir.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_mvdir";s:7:"comment";b:1;}s:39:"Hook_commandr_command_mysql_table_sizes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/mysql_table_sizes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_mysql_table_sizes";s:7:"comment";b:1;}s:28:"Hook_commandr_command_passwd";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/passwd.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:73:"Array of stdcommand, stdhtml, stdout, and stderr responses (false: error)";}}}s:4:"name";s:28:"Hook_commandr_command_passwd";s:7:"comment";b:1;}s:29:"Hook_commandr_command_phpinfo";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_commands/phpinfo.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:29:"Hook_commandr_command_phpinfo";s:7:"comment";b:1;}s:25:"Hook_commandr_command_pwd";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_commands/pwd.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:25:"Hook_commandr_command_pwd";s:7:"comment";b:1;}s:26:"Hook_commandr_command_read";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/read.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_read";s:7:"comment";b:1;}s:27:"Hook_commandr_command_reset";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/reset.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_reset";s:7:"comment";b:1;}s:24:"Hook_commandr_command_rm";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/rm.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_rm";s:7:"comment";b:1;}s:27:"Hook_commandr_command_rmdir";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/rmdir.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_rmdir";s:7:"comment";b:1;}s:38:"Hook_commandr_command_send_chatmessage";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_commands/send_chatmessage.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:38:"Hook_commandr_command_send_chatmessage";s:7:"comment";b:1;}s:39:"Hook_commandr_command_set_comment_forum";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/set_comment_forum.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_set_comment_forum";s:7:"comment";b:1;}s:50:"Hook_commandr_command_themewizard_compute_equation";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_commands/themewizard_compute_equation.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:50:"Hook_commandr_command_themewizard_compute_equation";s:7:"comment";b:1;}s:44:"Hook_commandr_command_themewizard_find_color";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:66:"sources/hooks/systems/commandr_commands/themewizard_find_color.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:44:"Hook_commandr_command_themewizard_find_color";s:7:"comment";b:1;}s:26:"Hook_commandr_command_time";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/time.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_time";s:7:"comment";b:1;}s:27:"Hook_commandr_command_untar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/untar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_untar";s:7:"comment";b:1;}s:34:"Hook_commandr_command_users_online";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/commandr_commands/users_online.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:34:"Hook_commandr_command_users_online";s:7:"comment";b:1;}s:29:"Hook_commandr_command_version";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_commands/version.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:29:"Hook_commandr_command_version";s:7:"comment";b:1;}s:36:"Hook_commandr_command_watch_chatroom";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_commands/watch_chatroom.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:36:"Hook_commandr_command_watch_chatroom";s:7:"comment";b:1;}s:28:"Hook_commandr_command_whoami";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/whoami.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:28:"Hook_commandr_command_whoami";s:7:"comment";b:1;}s:27:"Hook_commandr_command_whois";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/whois.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_whois";s:7:"comment";b:1;}s:27:"Hook_commandr_command_write";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/write.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_write";s:7:"comment";b:1;}s:41:"Hook_commandr_fs_aggregate_type_instances";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:41:"Hook_commandr_fs_aggregate_type_instances";s:7:"comment";b:1;}s:24:"Hook_commandr_fs_authors";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:24:"Hook_commandr_fs_authors";s:7:"comment";b:1;}s:28:"Hook_commandr_fs_award_types";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:28:"Hook_commandr_fs_award_types";s:7:"comment";b:1;}s:24:"Hook_commandr_fs_banners";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:24:"Hook_commandr_fs_banners";s:7:"comment";b:1;}s:20:"Hook_commandr_fs_bin";a:3:{s:9:"functions";a:6:{s:7:"listing";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:20:"Hook_commandr_fs_bin";s:7:"comment";b:1;}s:25:"Hook_commandr_fs_calendar";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:25:"Hook_commandr_fs_calendar";s:7:"comment";b:1;}s:27:"Hook_commandr_fs_catalogues";a:3:{s:9:"functions";a:19:{s:19:"get_resources_count";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:30:"_has_parent_child_relationship";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"above";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"Folder resource type (null: root)";s:11:"phpdoc_name";s:5:"above";}i:1;a:5:{s:4:"name";s:5:"under";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"Resource type (may be file or folder)";s:11:"phpdoc_name";s:5:"under";}}s:4:"name";s:30:"_has_parent_child_relationship";s:11:"description";s:111:"Find whether a kind of resource handled by this hook (folder or file) can be under a particular kind of folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:111:"A map: The parent referencing field, the table it is in, and the ID field of that table (null: cannot be under)";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:29:"folder_convert_id_to_filename";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:29:"folder_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The filename (null: could not find)";}}s:29:"folder_convert_filename_to_id";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:29:"folder_convert_filename_to_id";s:11:"description";s:102:"Get the resource ID for a filename. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"A pair: The resource type, the resource ID";}}s:37:"__folder_read_in_properties_catalogue";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:37:"__folder_read_in_properties_catalogue";s:11:"description";s:62:"Convert properties to variables for adding/editing catalogues.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:36:"__folder_read_in_properties_category";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.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:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:4:"edit";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:10:"Is an edit";s:11:"phpdoc_name";s:4:"edit";}}s:4:"name";s:36:"__folder_read_in_properties_category";s:11:"description";s:72:"Convert properties to variables for adding/editing catalogue categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:25:"Properties (false: error)";}}s:10:"folder_add";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:20:"_find_unique_key_num";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The catalogue fields";s:11:"phpdoc_name";s:6:"fields";}}s:4:"name";s:20:"_find_unique_key_num";s:11:"description";s:49:"Find the best unique key index for the catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"The key index";}}s:25:"__file_read_in_properties";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:4:{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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Category";s:11:"phpdoc_name";s:8:"category";}i:3;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:5:"Label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:25:"__file_read_in_properties";s:11:"description";s:69:"Convert properties to variables for adding/editing catalogue entries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:8:"file_add";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:27:"Hook_commandr_fs_catalogues";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_chat";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:25:"__file_read_in_properties";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:25:"__file_read_in_properties";s:11:"description";s:57:"Convert properties to variables for adding/editing rooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:8:"file_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:21:"Hook_commandr_fs_chat";s:7:"comment";b:1;}s:30:"Hook_commandr_fs_comcode_pages";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:30:"Hook_commandr_fs_comcode_pages";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_cpfs";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:21:"Hook_commandr_fs_cpfs";s:7:"comment";b:1;}s:36:"Hook_commandr_fs_custom_comcode_tags";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:36:"Hook_commandr_fs_custom_comcode_tags";s:7:"comment";b:1;}s:25:"Hook_commandr_fs_database";a:3:{s:9:"functions";a:9:{s:7:"listing";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:8:"contents";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:41:"The new file contents (string or integer)";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:9:"_do_where";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/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:6:"string";s:11:"description";s:19:"Database table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:4:"keys";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"Key-value map ("key:value,key2:value2")";s:11:"phpdoc_name";s:4:"keys";}}s:4:"name";s:9:"_do_where";s:11:"description";s:84:"Take a provided key-value map from the path and generate a DB query WHERE map array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:57:"WHERE map array (false: if an invalid key was referenced)";}}s:11:"escape_name";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/database.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:11:"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:13:"unescape_name";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/database.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:13:"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:25:"Hook_commandr_fs_database";s:7:"comment";b:1;}s:34:"Hook_commandr_fs_download_licences";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:34:"Hook_commandr_fs_download_licences";s:7:"comment";b:1;}s:26:"Hook_commandr_fs_downloads";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:26:"Hook_commandr_fs_downloads";s:7:"comment";b:1;}s:26:"Hook_commandr_fs_emoticons";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:26:"Hook_commandr_fs_emoticons";s:7:"comment";b:1;}s:20:"Hook_commandr_fs_etc";a:3:{s:9:"functions";a:6:{s:7:"listing";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:20:"Hook_commandr_fs_etc";s:7:"comment";b:1;}s:25:"Hook_commandr_fs_filedump";a:3:{s:9:"functions";a:8:{s:11:"__construct";a:5:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:21:"Standard constructor.";s:5:"flags";a:0:{}}s:17:"get_complete_path";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}}s:4:"name";s:17:"get_complete_path";s:11:"description";s:18:"Get complete path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:36:"A pair: Complete path, Relative path";}}s:7:"listing";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:25:"Hook_commandr_fs_filedump";s:7:"comment";b:1;}s:32:"Hook_commandr_fs_forum_groupings";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:32:"Hook_commandr_fs_forum_groupings";s:7:"comment";b:1;}s:23:"Hook_commandr_fs_forums";a:3:{s:9:"functions";a:18:{s:19:"get_resources_count";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:30:"_has_parent_child_relationship";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"above";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"Folder resource type (null: root)";s:11:"phpdoc_name";s:5:"above";}i:1;a:5:{s:4:"name";s:5:"under";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"Resource type (may be file or folder)";s:11:"phpdoc_name";s:5:"under";}}s:4:"name";s:30:"_has_parent_child_relationship";s:11:"description";s:111:"Find whether a kind of resource handled by this hook (folder or file) can be under a particular kind of folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:111:"A map: The parent referencing field, the table it is in, and the ID field of that table (null: cannot be under)";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"Parent category (blank: root / not applicable)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:29:"folder_convert_id_to_filename";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:29:"folder_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The filename (null: could not find)";}}s:29:"folder_convert_filename_to_id";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:29:"folder_convert_filename_to_id";s:11:"description";s:102:"Get the resource ID for a filename. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"A pair: The resource type, the resource ID";}}s:33:"__folder_read_in_properties_forum";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:33:"__folder_read_in_properties_forum";s:11:"description";s:58:"Convert properties to variables for adding/editing forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:33:"__folder_read_in_properties_topic";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:33:"__folder_read_in_properties_topic";s:11:"description";s:58:"Convert properties to variables for adding/editing topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:10:"folder_add";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.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:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:10:"force_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:50:"Resource type to try to force (null: do not force)";s:11:"phpdoc_name";s:10:"force_type";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:24:"save_ticket_associations";a:5:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}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:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:24:"save_ticket_associations";s:11:"description";s:25:"Save ticket associations.";s:5:"flags";a:0:{}}s:11:"folder_load";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:8:"file_add";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:23:"Hook_commandr_fs_forums";s:7:"comment";b:1;}s:26:"Hook_commandr_fs_galleries";a:3:{s:9:"functions";a:13:{s:19:"get_resources_count";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:27:"file_convert_id_to_filename";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:27:"file_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The filename";}}s:27:"file_convert_filename_to_id";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:27:"file_convert_filename_to_id";s:11:"description";s:112:"Get the resource ID for a filename (of file). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:65:"A pair: The resource type, the resource ID (null: could not find)";}}s:8:"file_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.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:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:10:"force_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:50:"Resource type to try to force (null: do not force)";s:11:"phpdoc_name";s:10:"force_type";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:26:"Hook_commandr_fs_galleries";s:7:"comment";b:1;}s:23:"Hook_commandr_fs_groups";a:3:{s:9:"functions";a:15:{s:19:"get_resources_count";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:"_get_folder_edit_date";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:27:"__folder_read_in_properties";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.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:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:4:"edit";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:10:"Is an edit";s:11:"phpdoc_name";s:4:"edit";}}s:4:"name";s:27:"__folder_read_in_properties";s:11:"description";s:59:"Convert properties to variables for adding/editing members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:10:"folder_add";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:25:"__file_read_in_properties";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.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:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:4:"edit";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:10:"Is an edit";s:11:"phpdoc_name";s:4:"edit";}}s:4:"name";s:25:"__file_read_in_properties";s:11:"description";s:59:"Convert properties to variables for adding/editing members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:8:"file_add";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:23:"Hook_commandr_fs_groups";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_home";a:3:{s:9:"functions";a:6:{s:7:"listing";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:21:"Hook_commandr_fs_home";s:7:"comment";b:1;}s:24:"Hook_commandr_fs_members";a:3:{s:9:"functions";a:7:{s:7:"listing";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:16:"get_field_id_for";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:9:"file_name";}i:1;a:7:{s:4:"name";s:10:"missing_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:27:"If the field may be missing";s:11:"phpdoc_name";s:10:"missing_ok";}}s:4:"name";s:16:"get_field_id_for";s:11:"description";s:42:"Get the field ID of a CPF from a filename.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"CPF ID";}}}s:4:"name";s:24:"Hook_commandr_fs_members";s:7:"comment";b:1;}s:22:"Hook_commandr_fs_menus";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:22:"Hook_commandr_fs_menus";s:7:"comment";b:1;}s:34:"Hook_commandr_fs_multi_moderations";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:34:"Hook_commandr_fs_multi_moderations";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_news";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:21:"Hook_commandr_fs_news";s:7:"comment";b:1;}s:39:"Hook_commandr_fs_newsletter_subscribers";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:39:"Hook_commandr_fs_newsletter_subscribers";s:7:"comment";b:1;}s:28:"Hook_commandr_fs_newsletters";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:28:"Hook_commandr_fs_newsletters";s:7:"comment";b:1;}s:37:"Hook_commandr_fs_periodic_newsletters";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:37:"Hook_commandr_fs_periodic_newsletters";s:7:"comment";b:1;}s:22:"Hook_commandr_fs_polls";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:22:"Hook_commandr_fs_polls";s:7:"comment";b:1;}s:31:"Hook_commandr_fs_post_templates";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:31:"Hook_commandr_fs_post_templates";s:7:"comment";b:1;}s:24:"Hook_commandr_fs_quizzes";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:16:"add_quiz_entries";a:5:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:7:"quiz_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"The quiz";s:11:"phpdoc_name";s:7:"quiz_id";}}s:4:"name";s:16:"add_quiz_entries";s:11:"description";s:36:"Custom import code for quiz entries.";s:5:"flags";a:0:{}}s:9:"file_load";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:24:"Hook_commandr_fs_quizzes";s:7:"comment";b:1;}s:20:"Hook_commandr_fs_raw";a:3:{s:9:"functions";a:6:{s:7:"listing";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:20:"Hook_commandr_fs_raw";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_root";a:3:{s:9:"functions";a:7:{s:7:"listing";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:20:"_customise_directory";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:2:{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:17:"Path to customise";s:11:"phpdoc_name";s:9:"directory";}i:1;a:7:{s:4:"name";s:18:"change_to_override";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to rewrite to be the alternative override directory";s:11:"phpdoc_name";s:18:"change_to_override";}}s:4:"name";s:20:"_customise_directory";s:11:"description";s:66:"Customise a directory path, adding _custom to appropriate entries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Customised path";}}}s:4:"name";s:21:"Hook_commandr_fs_root";s:7:"comment";b:1;}s:29:"Hook_commandr_fs_ticket_types";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:29:"Hook_commandr_fs_ticket_types";s:7:"comment";b:1;}s:40:"Hook_commandr_fs_usergroup_subscriptions";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:40:"Hook_commandr_fs_usergroup_subscriptions";s:7:"comment";b:1;}s:31:"Hook_commandr_fs_welcome_emails";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:31:"Hook_commandr_fs_welcome_emails";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_wiki";a:3:{s:9:"functions";a:10:{s:19:"get_resources_count";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"folder_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:13:"explicit_move";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Whether we are definitely moving (as opposed to possible having it in multiple positions)";s:11:"phpdoc_name";s:13:"explicit_move";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:8:"file_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:21:"Hook_commandr_fs_wiki";s:7:"comment";b:1;}s:49:"Hook_commandr_fs_extended_config__checklist_tasks";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:69:"sources/hooks/systems/commandr_fs_extended_config/checklist_tasks.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:69:"sources/hooks/systems/commandr_fs_extended_config/checklist_tasks.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:69:"sources/hooks/systems/commandr_fs_extended_config/checklist_tasks.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:49:"Hook_commandr_fs_extended_config__checklist_tasks";s:7:"comment";b:1;}s:48:"Hook_commandr_fs_extended_config__https_settings";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_config/https_settings.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_config/https_settings.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:68:"sources/hooks/systems/commandr_fs_extended_config/https_settings.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:48:"Hook_commandr_fs_extended_config__https_settings";s:7:"comment";b:1;}s:43:"Hook_commandr_fs_extended_config__ip_banned";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_config/ip_banned.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_config/ip_banned.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:63:"sources/hooks/systems/commandr_fs_extended_config/ip_banned.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:43:"Hook_commandr_fs_extended_config__ip_banned";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_config__ip_unbannable";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_config/ip_unbannable.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_config/ip_unbannable.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:67:"sources/hooks/systems/commandr_fs_extended_config/ip_unbannable.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:47:"Hook_commandr_fs_extended_config__ip_unbannable";s:7:"comment";b:1;}s:52:"Hook_commandr_fs_extended_config__match_key_messages";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_config/match_key_messages.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_config/match_key_messages.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:72:"sources/hooks/systems/commandr_fs_extended_config/match_key_messages.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:52:"Hook_commandr_fs_extended_config__match_key_messages";s:7:"comment";b:1;}s:55:"Hook_commandr_fs_extended_config__notification_lockdown";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_config/notification_lockdown.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_config/notification_lockdown.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:75:"sources/hooks/systems/commandr_fs_extended_config/notification_lockdown.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:55:"Hook_commandr_fs_extended_config__notification_lockdown";s:7:"comment";b:1;}s:44:"Hook_commandr_fs_extended_config__privileges";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:64:"sources/hooks/systems/commandr_fs_extended_config/privileges.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:64:"sources/hooks/systems/commandr_fs_extended_config/privileges.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:64:"sources/hooks/systems/commandr_fs_extended_config/privileges.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:44:"Hook_commandr_fs_extended_config__privileges";s:7:"comment";b:1;}s:48:"Hook_commandr_fs_extended_config__pstore_customs";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_config/pstore_customs.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_config/pstore_customs.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:68:"sources/hooks/systems/commandr_fs_extended_config/pstore_customs.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:48:"Hook_commandr_fs_extended_config__pstore_customs";s:7:"comment";b:1;}s:52:"Hook_commandr_fs_extended_config__pstore_permissions";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_config/pstore_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_config/pstore_permissions.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:72:"sources/hooks/systems/commandr_fs_extended_config/pstore_permissions.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:52:"Hook_commandr_fs_extended_config__pstore_permissions";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_config__pstore_prices";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_config/pstore_prices.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_config/pstore_prices.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:67:"sources/hooks/systems/commandr_fs_extended_config/pstore_prices.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:47:"Hook_commandr_fs_extended_config__pstore_prices";s:7:"comment";b:1;}s:43:"Hook_commandr_fs_extended_config__redirects";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_config/redirects.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_config/redirects.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:63:"sources/hooks/systems/commandr_fs_extended_config/redirects.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:43:"Hook_commandr_fs_extended_config__redirects";s:7:"comment";b:1;}s:45:"Hook_commandr_fs_extended_config__staff_links";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:65:"sources/hooks/systems/commandr_fs_extended_config/staff_links.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:65:"sources/hooks/systems/commandr_fs_extended_config/staff_links.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:65:"sources/hooks/systems/commandr_fs_extended_config/staff_links.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:45:"Hook_commandr_fs_extended_config__staff_links";s:7:"comment";b:1;}s:56:"Hook_commandr_fs_extended_config__staff_monitoring_sites";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_fs_extended_config/staff_monitoring_sites.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_fs_extended_config/staff_monitoring_sites.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:76:"sources/hooks/systems/commandr_fs_extended_config/staff_monitoring_sites.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:56:"Hook_commandr_fs_extended_config__staff_monitoring_sites";s:7:"comment";b:1;}s:44:"Hook_commandr_fs_extended_config__wordfilter";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:64:"sources/hooks/systems/commandr_fs_extended_config/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:64:"sources/hooks/systems/commandr_fs_extended_config/wordfilter.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:64:"sources/hooks/systems/commandr_fs_extended_config/wordfilter.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:44:"Hook_commandr_fs_extended_config__wordfilter";s:7:"comment";b:1;}s:56:"Hook_commandr_fs_extended_member__banned_from_submitting";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_fs_extended_member/banned_from_submitting.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:76:"sources/hooks/systems/commandr_fs_extended_member/banned_from_submitting.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:56:"Hook_commandr_fs_extended_member__banned_from_submitting";s:7:"comment";b:1;}s:43:"Hook_commandr_fs_extended_member__bookmarks";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_member/bookmarks.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_member/bookmarks.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:43:"Hook_commandr_fs_extended_member__bookmarks";s:7:"comment";b:1;}s:52:"Hook_commandr_fs_extended_member__calendar_interests";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_member/calendar_interests.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_member/calendar_interests.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:52:"Hook_commandr_fs_extended_member__calendar_interests";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_member__chat_blocking";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/chat_blocking.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/chat_blocking.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:47:"Hook_commandr_fs_extended_member__chat_blocking";s:7:"comment";b:1;}s:46:"Hook_commandr_fs_extended_member__chat_friends";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:66:"sources/hooks/systems/commandr_fs_extended_member/chat_friends.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:66:"sources/hooks/systems/commandr_fs_extended_member/chat_friends.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:46:"Hook_commandr_fs_extended_member__chat_friends";s:7:"comment";b:1;}s:52:"Hook_commandr_fs_extended_member__chat_sound_effects";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_member/chat_sound_effects.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_member/chat_sound_effects.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:52:"Hook_commandr_fs_extended_member__chat_sound_effects";s:7:"comment";b:1;}s:43:"Hook_commandr_fs_extended_member__cpf_perms";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_member/cpf_perms.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_member/cpf_perms.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:43:"Hook_commandr_fs_extended_member__cpf_perms";s:7:"comment";b:1;}s:48:"Hook_commandr_fs_extended_member__group_timeouts";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_member/group_timeouts.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_member/group_timeouts.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:48:"Hook_commandr_fs_extended_member__group_timeouts";s:7:"comment";b:1;}s:42:"Hook_commandr_fs_extended_member__invoices";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs_extended_member/invoices.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs_extended_member/invoices.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:42:"Hook_commandr_fs_extended_member__invoices";s:7:"comment";b:1;}s:49:"Hook_commandr_fs_extended_member__known_login_ips";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:69:"sources/hooks/systems/commandr_fs_extended_member/known_login_ips.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:69:"sources/hooks/systems/commandr_fs_extended_member/known_login_ips.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:49:"Hook_commandr_fs_extended_member__known_login_ips";s:7:"comment";b:1;}s:55:"Hook_commandr_fs_extended_member__notifications_enabled";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_member/notifications_enabled.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_member/notifications_enabled.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:55:"Hook_commandr_fs_extended_member__notifications_enabled";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_member__point_charges";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/point_charges.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/point_charges.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:47:"Hook_commandr_fs_extended_member__point_charges";s:7:"comment";b:1;}s:51:"Hook_commandr_fs_extended_member__point_gifts_given";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:71:"sources/hooks/systems/commandr_fs_extended_member/point_gifts_given.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:71:"sources/hooks/systems/commandr_fs_extended_member/point_gifts_given.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:51:"Hook_commandr_fs_extended_member__point_gifts_given";s:7:"comment";b:1;}s:48:"Hook_commandr_fs_extended_member__searches_saved";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_member/searches_saved.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_member/searches_saved.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:48:"Hook_commandr_fs_extended_member__searches_saved";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_member__subscriptions";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/subscriptions.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/subscriptions.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:47:"Hook_commandr_fs_extended_member__subscriptions";s:7:"comment";b:1;}s:55:"Hook_commandr_fs_extended_member__ticket_known_emailers";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_member/ticket_known_emailers.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_member/ticket_known_emailers.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:55:"Hook_commandr_fs_extended_member__ticket_known_emailers";s:7:"comment";b:1;}s:42:"Hook_commandr_fs_extended_member__warnings";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs_extended_member/warnings.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs_extended_member/warnings.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:42:"Hook_commandr_fs_extended_member__warnings";s:7:"comment";b:1;}s:31:"Hook_commandr_notification_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_notifications/chat.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"timestamp";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 "current" time on which to base queries (null: now)";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:3:"run";s:11:"description";s:45:"Run function for Commandr notification hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:61:"Array of section, type and message responses (false: nothing)";}}}s:4:"name";s:31:"Hook_commandr_notification_chat";s:7:"comment";b:1;}s:39:"Hook_commandr_notification_commandrchat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_notifications/commandrchat.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"timestamp";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 "current" time on which to base queries (null: now)";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:3:"run";s:11:"description";s:45:"Run function for Commandr notification hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:61:"Array of section, type and message responses (false: nothing)";}}}s:4:"name";s:39:"Hook_commandr_notification_commandrchat";s:7:"comment";b:1;}s:59:"Hook_config_activity_show_stats_count_page_views_this_month";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:80:"sources/hooks/systems/config/activity_show_stats_count_page_views_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:80:"sources/hooks/systems/config/activity_show_stats_count_page_views_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:59:"Hook_config_activity_show_stats_count_page_views_this_month";s:7:"comment";b:1;}s:58:"Hook_config_activity_show_stats_count_page_views_this_week";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:79:"sources/hooks/systems/config/activity_show_stats_count_page_views_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:79:"sources/hooks/systems/config/activity_show_stats_count_page_views_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:58:"Hook_config_activity_show_stats_count_page_views_this_week";s:7:"comment";b:1;}s:54:"Hook_config_activity_show_stats_count_page_views_today";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/activity_show_stats_count_page_views_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/activity_show_stats_count_page_views_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:54:"Hook_config_activity_show_stats_count_page_views_today";s:7:"comment";b:1;}s:50:"Hook_config_activity_show_stats_count_users_online";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/activity_show_stats_count_users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/activity_show_stats_count_users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:50:"Hook_config_activity_show_stats_count_users_online";s:7:"comment";b:1;}s:56:"Hook_config_activity_show_stats_count_users_online_forum";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:77:"sources/hooks/systems/config/activity_show_stats_count_users_online_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:77:"sources/hooks/systems/config/activity_show_stats_count_users_online_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:56:"Hook_config_activity_show_stats_count_users_online_forum";s:7:"comment";b:1;}s:57:"Hook_config_activity_show_stats_count_users_online_record";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:78:"sources/hooks/systems/config/activity_show_stats_count_users_online_record.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:78:"sources/hooks/systems/config/activity_show_stats_count_users_online_record.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:57:"Hook_config_activity_show_stats_count_users_online_record";s:7:"comment";b:1;}s:25:"Hook_config_admin_banners";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/admin_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/admin_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_admin_banners";s:7:"comment";b:1;}s:30:"Hook_config_allow_alpha_search";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/allow_alpha_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/allow_alpha_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_allow_alpha_search";s:7:"comment";b:1;}s:30:"Hook_config_allow_audio_videos";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/allow_audio_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/allow_audio_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_allow_audio_videos";s:7:"comment";b:1;}s:36:"Hook_config_allow_auto_notifications";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/allow_auto_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/allow_auto_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_allow_auto_notifications";s:7:"comment";b:1;}s:31:"Hook_config_allow_email_disable";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/allow_email_disable.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/allow_email_disable.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_allow_email_disable";s:7:"comment";b:1;}s:42:"Hook_config_allow_email_from_staff_disable";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/allow_email_from_staff_disable.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/allow_email_from_staff_disable.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:42:"Hook_config_allow_email_from_staff_disable";s:7:"comment";b:1;}s:28:"Hook_config_allow_ext_images";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/allow_ext_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/allow_ext_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_allow_ext_images";s:7:"comment";b:1;}s:31:"Hook_config_allow_international";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/allow_international.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/allow_international.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_allow_international";s:7:"comment";b:1;}s:35:"Hook_config_allow_opting_out_of_tax";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/allow_opting_out_of_tax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/allow_opting_out_of_tax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_allow_opting_out_of_tax";s:7:"comment";b:1;}s:26:"Hook_config_allow_own_rate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/allow_own_rate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/allow_own_rate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_allow_own_rate";s:7:"comment";b:1;}s:38:"Hook_config_allow_theme_image_selector";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/allow_theme_image_selector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/allow_theme_image_selector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_allow_theme_image_selector";s:7:"comment";b:1;}s:35:"Hook_config_allowed_post_submitters";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/allowed_post_submitters.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/allowed_post_submitters.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_allowed_post_submitters";s:7:"comment";b:1;}s:22:"Hook_config_anti_leech";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/anti_leech.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/anti_leech.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_anti_leech";s:7:"comment";b:1;}s:30:"Hook_config_attachment_cleanup";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/attachment_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/attachment_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_attachment_cleanup";s:7:"comment";b:1;}s:37:"Hook_config_attachment_default_height";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/attachment_default_height.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/attachment_default_height.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_attachment_default_height";s:7:"comment";b:1;}s:36:"Hook_config_attachment_default_width";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/attachment_default_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/attachment_default_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_attachment_default_width";s:7:"comment";b:1;}s:25:"Hook_config_audio_bitrate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/audio_bitrate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/audio_bitrate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_audio_bitrate";s:7:"comment";b:1;}s:25:"Hook_config_audio_captcha";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/audio_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/audio_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_audio_captcha";s:7:"comment";b:1;}s:31:"Hook_config_auto_submit_sitemap";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/auto_submit_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/auto_submit_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_auto_submit_sitemap";s:7:"comment";b:1;}s:19:"Hook_config_autoban";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/autoban.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/autoban.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:19:"Hook_config_autoban";s:7:"comment";b:1;}s:20:"Hook_config_autogrow";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/autogrow.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/autogrow.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_autogrow";s:7:"comment";b:1;}s:37:"Hook_config_automatic_meta_extraction";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/automatic_meta_extraction.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/automatic_meta_extraction.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_automatic_meta_extraction";s:7:"comment";b:1;}s:37:"Hook_config_average_gamble_multiplier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/average_gamble_multiplier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/average_gamble_multiplier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_average_gamble_multiplier";s:7:"comment";b:1;}s:34:"Hook_config_awarded_items_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/awarded_items_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/awarded_items_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_awarded_items_per_page";s:7:"comment";b:1;}s:28:"Hook_config_backup_overwrite";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/backup_overwrite.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/backup_overwrite.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_backup_overwrite";s:7:"comment";b:1;}s:34:"Hook_config_backup_server_hostname";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/backup_server_hostname.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/backup_server_hostname.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_backup_server_hostname";s:7:"comment";b:1;}s:34:"Hook_config_backup_server_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/backup_server_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/backup_server_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_backup_server_password";s:7:"comment";b:1;}s:30:"Hook_config_backup_server_path";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_backup_server_path";s:7:"comment";b:1;}s:30:"Hook_config_backup_server_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_backup_server_port";s:7:"comment";b:1;}s:30:"Hook_config_backup_server_user";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_backup_server_user";s:7:"comment";b:1;}s:23:"Hook_config_backup_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/backup_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/backup_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_backup_time";s:7:"comment";b:1;}s:27:"Hook_config_banner_autosize";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/banner_autosize.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/banner_autosize.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_banner_autosize";s:7:"comment";b:1;}s:22:"Hook_config_banner_hit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/banner_hit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/banner_hit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_banner_hit";s:7:"comment";b:1;}s:22:"Hook_config_banner_imp";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/banner_imp.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/banner_imp.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_banner_imp";s:7:"comment";b:1;}s:24:"Hook_config_banner_setup";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/banner_setup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/banner_setup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_banner_setup";s:7:"comment";b:1;}s:15:"Hook_config_bcc";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/bcc.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/bcc.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:15:"Hook_config_bcc";s:7:"comment";b:1;}s:27:"Hook_config_block_top_login";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/block_top_login.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/block_top_login.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_block_top_login";s:7:"comment";b:1;}s:35:"Hook_config_block_top_notifications";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/block_top_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/block_top_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_block_top_notifications";s:7:"comment";b:1;}s:36:"Hook_config_block_top_personal_stats";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/block_top_personal_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/block_top_personal_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_block_top_personal_stats";s:7:"comment";b:1;}s:28:"Hook_config_block_top_search";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/block_top_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/block_top_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_block_top_search";s:7:"comment";b:1;}s:28:"Hook_config_blog_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/blog_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/blog_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_blog_update_time";s:7:"comment";b:1;}s:21:"Hook_config_bot_stats";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/bot_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/bot_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_bot_stats";s:7:"comment";b:1;}s:39:"Hook_config_bottom_show_commandr_button";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/bottom_show_commandr_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/bottom_show_commandr_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_bottom_show_commandr_button";s:7:"comment";b:1;}s:37:"Hook_config_bottom_show_feedback_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/bottom_show_feedback_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/bottom_show_feedback_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_bottom_show_feedback_link";s:7:"comment";b:1;}s:36:"Hook_config_bottom_show_privacy_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/bottom_show_privacy_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/bottom_show_privacy_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_bottom_show_privacy_link";s:7:"comment";b:1;}s:44:"Hook_config_bottom_show_realtime_rain_button";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/bottom_show_realtime_rain_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/bottom_show_realtime_rain_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_bottom_show_realtime_rain_button";s:7:"comment";b:1;}s:34:"Hook_config_bottom_show_rules_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/bottom_show_rules_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/bottom_show_rules_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_bottom_show_rules_link";s:7:"comment";b:1;}s:38:"Hook_config_bottom_show_sitemap_button";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/bottom_show_sitemap_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/bottom_show_sitemap_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_bottom_show_sitemap_button";s:7:"comment";b:1;}s:34:"Hook_config_bottom_show_top_button";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/bottom_show_top_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/bottom_show_top_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_bottom_show_top_button";s:7:"comment";b:1;}s:34:"Hook_config_breadcrumb_crop_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/breadcrumb_crop_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/breadcrumb_crop_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_breadcrumb_crop_length";s:7:"comment";b:1;}s:35:"Hook_config_brute_force_instant_ban";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/brute_force_instant_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/brute_force_instant_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_brute_force_instant_ban";s:7:"comment";b:1;}s:37:"Hook_config_brute_force_login_minutes";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/brute_force_login_minutes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/brute_force_login_minutes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_brute_force_login_minutes";s:7:"comment";b:1;}s:33:"Hook_config_brute_force_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/brute_force_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/brute_force_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_brute_force_threshold";s:7:"comment";b:1;}s:44:"Hook_config_calendar_show_stats_count_events";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/calendar_show_stats_count_events.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/calendar_show_stats_count_events.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_calendar_show_stats_count_events";s:7:"comment";b:1;}s:55:"Hook_config_calendar_show_stats_count_events_this_month";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/calendar_show_stats_count_events_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/calendar_show_stats_count_events_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:55:"Hook_config_calendar_show_stats_count_events_this_month";s:7:"comment";b:1;}s:54:"Hook_config_calendar_show_stats_count_events_this_week";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/calendar_show_stats_count_events_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/calendar_show_stats_count_events_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:54:"Hook_config_calendar_show_stats_count_events_this_week";s:7:"comment";b:1;}s:54:"Hook_config_calendar_show_stats_count_events_this_year";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/calendar_show_stats_count_events_this_year.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/calendar_show_stats_count_events_this_year.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:54:"Hook_config_calendar_show_stats_count_events_this_year";s:7:"comment";b:1;}s:21:"Hook_config_call_home";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/call_home.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/call_home.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_call_home";s:7:"comment";b:1;}s:29:"Hook_config_callback_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/callback_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/callback_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_callback_password";s:7:"comment";b:1;}s:25:"Hook_config_captcha_noise";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/captcha_noise.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/captcha_noise.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_captcha_noise";s:7:"comment";b:1;}s:31:"Hook_config_captcha_on_feedback";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/captcha_on_feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/captcha_on_feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_captcha_on_feedback";s:7:"comment";b:1;}s:32:"Hook_config_captcha_single_guess";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/captcha_single_guess.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/captcha_single_guess.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_captcha_single_guess";s:7:"comment";b:1;}s:27:"Hook_config_cart_hold_hours";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cart_hold_hours.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cart_hold_hours.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_cart_hold_hours";s:7:"comment";b:1;}s:38:"Hook_config_catalogue_entries_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogue_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogue_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_catalogue_entries_per_page";s:7:"comment";b:1;}s:38:"Hook_config_catalogue_subcats_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogue_subcats_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogue_subcats_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_catalogue_subcats_per_page";s:7:"comment";b:1;}s:38:"Hook_config_catalogues_subcat_narrowin";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogues_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogues_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_catalogues_subcat_narrowin";s:7:"comment";b:1;}s:22:"Hook_config_cc_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/cc_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/cc_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_cc_address";s:7:"comment";b:1;}s:15:"Hook_config_cdn";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/cdn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/cdn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:15:"Hook_config_cdn";s:7:"comment";b:1;}s:36:"Hook_config_chat_default_post_colour";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/chat_default_post_colour.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/chat_default_post_colour.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_chat_default_post_colour";s:7:"comment";b:1;}s:34:"Hook_config_chat_default_post_font";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/chat_default_post_font.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/chat_default_post_font.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_chat_default_post_font";s:7:"comment";b:1;}s:32:"Hook_config_chat_flood_timelimit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/chat_flood_timelimit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/chat_flood_timelimit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_chat_flood_timelimit";s:7:"comment";b:1;}s:37:"Hook_config_chat_max_messages_to_show";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/chat_max_messages_to_show.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/chat_max_messages_to_show.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_chat_max_messages_to_show";s:7:"comment";b:1;}s:39:"Hook_config_chat_message_check_interval";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_message_check_interval.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_message_check_interval.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_chat_message_check_interval";s:7:"comment";b:1;}s:43:"Hook_config_chat_private_room_deletion_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/chat_private_room_deletion_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/chat_private_room_deletion_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_chat_private_room_deletion_time";s:7:"comment";b:1;}s:42:"Hook_config_chat_show_stats_count_messages";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/chat_show_stats_count_messages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/chat_show_stats_count_messages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:42:"Hook_config_chat_show_stats_count_messages";s:7:"comment";b:1;}s:39:"Hook_config_chat_show_stats_count_rooms";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_show_stats_count_rooms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_show_stats_count_rooms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_chat_show_stats_count_rooms";s:7:"comment";b:1;}s:39:"Hook_config_chat_show_stats_count_users";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_show_stats_count_users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_show_stats_count_users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_chat_show_stats_count_users";s:7:"comment";b:1;}s:38:"Hook_config_chat_transitory_alert_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/chat_transitory_alert_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/chat_transitory_alert_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_chat_transitory_alert_time";s:7:"comment";b:1;}s:29:"Hook_config_check_broken_urls";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/check_broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/check_broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_check_broken_urls";s:7:"comment";b:1;}s:25:"Hook_config_cleanup_files";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/cleanup_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/cleanup_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_cleanup_files";s:7:"comment";b:1;}s:18:"Hook_config_closed";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:39:"sources/hooks/systems/config/closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:39:"sources/hooks/systems/config/closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:18:"Hook_config_closed";s:7:"comment";b:1;}s:35:"Hook_config_club_forum_parent_forum";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/club_forum_parent_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/club_forum_parent_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_club_forum_parent_forum";s:7:"comment";b:1;}s:44:"Hook_config_club_forum_parent_forum_grouping";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/club_forum_parent_forum_grouping.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/club_forum_parent_forum_grouping.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_club_forum_parent_forum_grouping";s:7:"comment";b:1;}s:33:"Hook_config_cns_show_profile_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/cns_show_profile_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/cns_show_profile_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_cns_show_profile_link";s:7:"comment";b:1;}s:31:"Hook_config_collapse_user_zones";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/collapse_user_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/collapse_user_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_collapse_user_zones";s:7:"comment";b:1;}s:44:"Hook_config_comcode_page_default_review_freq";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/comcode_page_default_review_freq.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/comcode_page_default_review_freq.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_comcode_page_default_review_freq";s:7:"comment";b:1;}s:34:"Hook_config_commandr_chat_announce";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/commandr_chat_announce.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/commandr_chat_announce.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_commandr_chat_announce";s:7:"comment";b:1;}s:24:"Hook_config_comment_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/comment_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/comment_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_comment_text";s:7:"comment";b:1;}s:33:"Hook_config_comment_topic_subject";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/comment_topic_subject.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/comment_topic_subject.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_comment_topic_subject";s:7:"comment";b:1;}s:31:"Hook_config_comments_forum_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/comments_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/comments_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_comments_forum_name";s:7:"comment";b:1;}s:38:"Hook_config_comments_to_show_in_thread";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/comments_to_show_in_thread.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/comments_to_show_in_thread.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_comments_to_show_in_thread";s:7:"comment";b:1;}s:25:"Hook_config_complex_lists";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/complex_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/complex_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_complex_lists";s:7:"comment";b:1;}s:35:"Hook_config_complex_privacy_options";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/complex_privacy_options.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/complex_privacy_options.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_complex_privacy_options";s:7:"comment";b:1;}s:28:"Hook_config_complex_uploader";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/complex_uploader.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/complex_uploader.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_complex_uploader";s:7:"comment";b:1;}s:25:"Hook_config_cookie_notice";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/cookie_notice.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/cookie_notice.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_cookie_notice";s:7:"comment";b:1;}s:21:"Hook_config_copyright";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/copyright.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/copyright.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_copyright";s:7:"comment";b:1;}s:27:"Hook_config_cpf_enable_city";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cpf_enable_city.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cpf_enable_city.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_cpf_enable_city";s:7:"comment";b:1;}s:30:"Hook_config_cpf_enable_country";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/cpf_enable_country.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/cpf_enable_country.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_cpf_enable_country";s:7:"comment";b:1;}s:29:"Hook_config_cpf_enable_county";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/cpf_enable_county.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/cpf_enable_county.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_cpf_enable_county";s:7:"comment";b:1;}s:27:"Hook_config_cpf_enable_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cpf_enable_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cpf_enable_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_cpf_enable_name";s:7:"comment";b:1;}s:28:"Hook_config_cpf_enable_phone";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/cpf_enable_phone.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/cpf_enable_phone.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_cpf_enable_phone";s:7:"comment";b:1;}s:32:"Hook_config_cpf_enable_post_code";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/cpf_enable_post_code.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/cpf_enable_post_code.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_cpf_enable_post_code";s:7:"comment";b:1;}s:28:"Hook_config_cpf_enable_state";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/cpf_enable_state.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/cpf_enable_state.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_cpf_enable_state";s:7:"comment";b:1;}s:37:"Hook_config_cpf_enable_street_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/cpf_enable_street_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/cpf_enable_street_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_cpf_enable_street_address";s:7:"comment";b:1;}s:25:"Hook_config_crypt_ratchet";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/crypt_ratchet.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/crypt_ratchet.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_crypt_ratchet";s:7:"comment";b:1;}s:35:"Hook_config_csrf_token_expire_fresh";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/csrf_token_expire_fresh.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/csrf_token_expire_fresh.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_csrf_token_expire_fresh";s:7:"comment";b:1;}s:33:"Hook_config_csrf_token_expire_new";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/csrf_token_expire_new.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/csrf_token_expire_new.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_csrf_token_expire_new";s:7:"comment";b:1;}s:23:"Hook_config_css_captcha";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/css_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/css_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_css_captcha";s:7:"comment";b:1;}s:20:"Hook_config_currency";a:3:{s:9:"functions";a:3:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/currency.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/currency.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}s:14:"field_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/currency.php";s:10:"parameters";a:4:{i:0;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 config option name";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"myrow";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The config row";s:11:"phpdoc_name";s:5:"myrow";}i:2;a:5:{s:4:"name";s:10:"human_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The field title";s:11:"phpdoc_name";s:10:"human_name";}i:3;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:11:"explanation";}}s:4:"name";s:14:"field_inputter";s:11:"description";s:42:"Field inputter (because the_type=special).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The inputter";}}}s:4:"name";s:20:"Hook_config_currency";s:7:"comment";b:1;}s:26:"Hook_config_decryption_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/decryption_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/decryption_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_decryption_key";s:7:"comment";b:1;}s:36:"Hook_config_deeper_admin_breadcrumbs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/deeper_admin_breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/deeper_admin_breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_deeper_admin_breadcrumbs";s:7:"comment";b:1;}s:38:"Hook_config_default_comment_sort_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/default_comment_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/default_comment_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_default_comment_sort_order";s:7:"comment";b:1;}s:34:"Hook_config_default_preview_guests";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/default_preview_guests.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/default_preview_guests.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_default_preview_guests";s:7:"comment";b:1;}s:32:"Hook_config_default_video_height";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/default_video_height.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/default_video_height.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_default_video_height";s:7:"comment";b:1;}s:31:"Hook_config_default_video_width";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/default_video_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/default_video_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_default_video_width";s:7:"comment";b:1;}s:29:"Hook_config_delete_time_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/delete_time_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/delete_time_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_delete_time_limit";s:7:"comment";b:1;}s:30:"Hook_config_delete_trashed_pts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/delete_trashed_pts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/delete_trashed_pts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_delete_trashed_pts";s:7:"comment";b:1;}s:23:"Hook_config_description";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/description.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/description.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_description";s:7:"comment";b:1;}s:29:"Hook_config_detect_javascript";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/detect_javascript.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/detect_javascript.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_detect_javascript";s:7:"comment";b:1;}s:31:"Hook_config_detect_lang_browser";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/detect_lang_browser.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/detect_lang_browser.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_detect_lang_browser";s:7:"comment";b:1;}s:29:"Hook_config_detect_lang_forum";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/detect_lang_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/detect_lang_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_detect_lang_forum";s:7:"comment";b:1;}s:34:"Hook_config_display_name_generator";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/display_name_generator.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/display_name_generator.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_display_name_generator";s:7:"comment";b:1;}s:30:"Hook_config_display_php_errors";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/display_php_errors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/display_php_errors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_display_php_errors";s:7:"comment";b:1;}s:28:"Hook_config_dkim_private_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/dkim_private_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/dkim_private_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_dkim_private_key";s:7:"comment";b:1;}s:25:"Hook_config_dkim_selector";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/dkim_selector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/dkim_selector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_dkim_selector";s:7:"comment";b:1;}s:30:"Hook_config_dload_search_index";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/dload_search_index.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/dload_search_index.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_dload_search_index";s:7:"comment";b:1;}s:16:"Hook_config_dobs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:37:"sources/hooks/systems/config/dobs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:37:"sources/hooks/systems/config/dobs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:16:"Hook_config_dobs";s:7:"comment";b:1;}s:37:"Hook_config_download_entries_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/download_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/download_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_download_entries_per_page";s:7:"comment";b:1;}s:33:"Hook_config_download_gallery_root";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/download_gallery_root.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/download_gallery_root.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_download_gallery_root";s:7:"comment";b:1;}s:37:"Hook_config_download_subcats_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/download_subcats_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/download_subcats_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_download_subcats_per_page";s:7:"comment";b:1;}s:40:"Hook_config_downloads_default_sort_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/downloads_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/downloads_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_downloads_default_sort_order";s:7:"comment";b:1;}s:46:"Hook_config_downloads_show_stats_count_archive";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/downloads_show_stats_count_archive.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/downloads_show_stats_count_archive.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:46:"Hook_config_downloads_show_stats_count_archive";s:7:"comment";b:1;}s:48:"Hook_config_downloads_show_stats_count_bandwidth";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/downloads_show_stats_count_bandwidth.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/downloads_show_stats_count_bandwidth.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:48:"Hook_config_downloads_show_stats_count_bandwidth";s:7:"comment";b:1;}s:48:"Hook_config_downloads_show_stats_count_downloads";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/downloads_show_stats_count_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/downloads_show_stats_count_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:48:"Hook_config_downloads_show_stats_count_downloads";s:7:"comment";b:1;}s:44:"Hook_config_downloads_show_stats_count_total";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/downloads_show_stats_count_total.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/downloads_show_stats_count_total.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_downloads_show_stats_count_total";s:7:"comment";b:1;}s:37:"Hook_config_downloads_subcat_narrowin";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/downloads_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/downloads_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_downloads_subcat_narrowin";s:7:"comment";b:1;}s:35:"Hook_config_dual_format_newsletters";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/dual_format_newsletters.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/dual_format_newsletters.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_dual_format_newsletters";s:7:"comment";b:1;}s:28:"Hook_config_dynamic_firewall";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/dynamic_firewall.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/dynamic_firewall.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_dynamic_firewall";s:7:"comment";b:1;}s:25:"Hook_config_eager_wysiwyg";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/eager_wysiwyg.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/eager_wysiwyg.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_eager_wysiwyg";s:7:"comment";b:1;}s:31:"Hook_config_ecommerce_test_mode";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/ecommerce_test_mode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/ecommerce_test_mode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_ecommerce_test_mode";s:7:"comment";b:1;}s:27:"Hook_config_edit_time_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/edit_time_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/edit_time_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_edit_time_limit";s:7:"comment";b:1;}s:22:"Hook_config_edit_under";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/edit_under.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/edit_under.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_edit_under";s:7:"comment";b:1;}s:20:"Hook_config_editarea";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/editarea.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/editarea.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_editarea";s:7:"comment";b:1;}s:30:"Hook_config_email_confirm_join";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/email_confirm_join.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/email_confirm_join.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_email_confirm_join";s:7:"comment";b:1;}s:26:"Hook_config_email_log_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/email_log_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/email_log_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_email_log_days";s:7:"comment";b:1;}s:41:"Hook_config_enable_add_topic_btn_in_topic";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/enable_add_topic_btn_in_topic.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/enable_add_topic_btn_in_topic.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_enable_add_topic_btn_in_topic";s:7:"comment";b:1;}s:29:"Hook_config_enable_animations";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/enable_animations.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/enable_animations.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_enable_animations";s:7:"comment";b:1;}s:28:"Hook_config_enable_birthdays";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/enable_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/enable_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_enable_birthdays";s:7:"comment";b:1;}s:33:"Hook_config_enable_boolean_search";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_boolean_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_boolean_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_enable_boolean_search";s:7:"comment";b:1;}s:32:"Hook_config_enable_csv_recommend";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/enable_csv_recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/enable_csv_recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_enable_csv_recommend";s:7:"comment";b:1;}s:25:"Hook_config_enable_ecards";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/enable_ecards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/enable_ecards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_enable_ecards";s:7:"comment";b:1;}s:27:"Hook_config_enable_feedback";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_enable_feedback";s:7:"comment";b:1;}s:37:"Hook_config_enable_forum_dupe_buttons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/enable_forum_dupe_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/enable_forum_dupe_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_enable_forum_dupe_buttons";s:7:"comment";b:1;}s:33:"Hook_config_enable_highlight_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_enable_highlight_name";s:7:"comment";b:1;}s:40:"Hook_config_enable_keyword_density_check";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/enable_keyword_density_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/enable_keyword_density_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_enable_keyword_density_check";s:7:"comment";b:1;}s:34:"Hook_config_enable_mark_forum_read";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/enable_mark_forum_read.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/enable_mark_forum_read.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_enable_mark_forum_read";s:7:"comment";b:1;}s:36:"Hook_config_enable_mark_topic_unread";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_mark_topic_unread.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_mark_topic_unread.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_enable_mark_topic_unread";s:7:"comment";b:1;}s:38:"Hook_config_enable_markup_webstandards";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/enable_markup_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/enable_markup_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_enable_markup_webstandards";s:7:"comment";b:1;}s:30:"Hook_config_enable_multi_quote";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_multi_quote.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_multi_quote.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_multi_quote";s:7:"comment";b:1;}s:32:"Hook_config_enable_post_emphasis";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/enable_post_emphasis.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/enable_post_emphasis.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_enable_post_emphasis";s:7:"comment";b:1;}s:27:"Hook_config_enable_previews";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_previews.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_previews.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_enable_previews";s:7:"comment";b:1;}s:30:"Hook_config_enable_privacy_tab";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_privacy_tab.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_privacy_tab.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_privacy_tab";s:7:"comment";b:1;}s:31:"Hook_config_enable_pt_filtering";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/enable_pt_filtering.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/enable_pt_filtering.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_enable_pt_filtering";s:7:"comment";b:1;}s:30:"Hook_config_enable_pt_restrict";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_pt_restrict.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_pt_restrict.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_pt_restrict";s:7:"comment";b:1;}s:33:"Hook_config_enable_secondary_news";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_secondary_news.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_secondary_news.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_enable_secondary_news";s:7:"comment";b:1;}s:29:"Hook_config_enable_seo_fields";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/enable_seo_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/enable_seo_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_enable_seo_fields";s:7:"comment";b:1;}s:27:"Hook_config_enable_skip_sig";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_skip_sig.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_skip_sig.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_enable_skip_sig";s:7:"comment";b:1;}s:30:"Hook_config_enable_spell_check";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_spell_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_spell_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_spell_check";s:7:"comment";b:1;}s:30:"Hook_config_enable_staff_notes";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_staff_notes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_staff_notes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_staff_notes";s:7:"comment";b:1;}s:23:"Hook_config_enable_sunk";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/enable_sunk.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/enable_sunk.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_enable_sunk";s:7:"comment";b:1;}s:36:"Hook_config_enable_theme_img_buttons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_theme_img_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_theme_img_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_enable_theme_img_buttons";s:7:"comment";b:1;}s:37:"Hook_config_enable_user_online_groups";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/enable_user_online_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/enable_user_online_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_enable_user_online_groups";s:7:"comment";b:1;}s:36:"Hook_config_enable_views_sigs_option";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_views_sigs_option.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_views_sigs_option.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_enable_views_sigs_option";s:7:"comment";b:1;}s:26:"Hook_config_encryption_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/encryption_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/encryption_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_encryption_key";s:7:"comment";b:1;}s:30:"Hook_config_enveloper_override";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enveloper_override.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enveloper_override.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enveloper_override";s:7:"comment";b:1;}s:23:"Hook_config_ffmpeg_path";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/ffmpeg_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/ffmpeg_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_ffmpeg_path";s:7:"comment";b:1;}s:49:"Hook_config_filedump_show_stats_count_total_files";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:70:"sources/hooks/systems/config/filedump_show_stats_count_total_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:70:"sources/hooks/systems/config/filedump_show_stats_count_total_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:49:"Hook_config_filedump_show_stats_count_total_files";s:7:"comment";b:1;}s:49:"Hook_config_filedump_show_stats_count_total_space";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:70:"sources/hooks/systems/config/filedump_show_stats_count_total_space.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:70:"sources/hooks/systems/config/filedump_show_stats_count_total_space.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:49:"Hook_config_filedump_show_stats_count_total_space";s:7:"comment";b:1;}s:26:"Hook_config_filetype_icons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/filetype_icons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/filetype_icons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_filetype_icons";s:7:"comment";b:1;}s:26:"Hook_config_filter_regions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/filter_regions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/filter_regions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_filter_regions";s:7:"comment";b:1;}s:26:"Hook_config_finish_profile";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/finish_profile.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/finish_profile.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_finish_profile";s:7:"comment";b:1;}s:23:"Hook_config_fixed_width";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/fixed_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/fixed_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_fixed_width";s:7:"comment";b:1;}s:29:"Hook_config_force_guest_names";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/force_guest_names.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/force_guest_names.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_force_guest_names";s:7:"comment";b:1;}s:32:"Hook_config_force_local_temp_dir";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/force_local_temp_dir.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/force_local_temp_dir.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_force_local_temp_dir";s:7:"comment";b:1;}s:30:"Hook_config_force_meta_refresh";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/force_meta_refresh.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/force_meta_refresh.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_force_meta_refresh";s:7:"comment";b:1;}s:33:"Hook_config_forced_preview_option";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/forced_preview_option.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/forced_preview_option.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_forced_preview_option";s:7:"comment";b:1;}s:27:"Hook_config_forum_in_portal";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/forum_in_portal.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/forum_in_portal.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_forum_in_portal";s:7:"comment";b:1;}s:32:"Hook_config_forum_posts_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/forum_posts_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/forum_posts_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_forum_posts_per_page";s:7:"comment";b:1;}s:43:"Hook_config_forum_show_personal_stats_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/forum_show_personal_stats_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/forum_show_personal_stats_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_forum_show_personal_stats_posts";s:7:"comment";b:1;}s:44:"Hook_config_forum_show_personal_stats_topics";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/forum_show_personal_stats_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/forum_show_personal_stats_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_forum_show_personal_stats_topics";s:7:"comment";b:1;}s:42:"Hook_config_forum_show_stats_count_members";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/forum_show_stats_count_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/forum_show_stats_count_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:42:"Hook_config_forum_show_stats_count_members";s:7:"comment";b:1;}s:60:"Hook_config_forum_show_stats_count_members_active_this_month";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:81:"sources/hooks/systems/config/forum_show_stats_count_members_active_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:81:"sources/hooks/systems/config/forum_show_stats_count_members_active_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:60:"Hook_config_forum_show_stats_count_members_active_this_month";s:7:"comment";b:1;}s:59:"Hook_config_forum_show_stats_count_members_active_this_week";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:80:"sources/hooks/systems/config/forum_show_stats_count_members_active_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:80:"sources/hooks/systems/config/forum_show_stats_count_members_active_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:59:"Hook_config_forum_show_stats_count_members_active_this_week";s:7:"comment";b:1;}s:55:"Hook_config_forum_show_stats_count_members_active_today";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/forum_show_stats_count_members_active_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/forum_show_stats_count_members_active_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:55:"Hook_config_forum_show_stats_count_members_active_today";s:7:"comment";b:1;}s:57:"Hook_config_forum_show_stats_count_members_new_this_month";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:78:"sources/hooks/systems/config/forum_show_stats_count_members_new_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:78:"sources/hooks/systems/config/forum_show_stats_count_members_new_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:57:"Hook_config_forum_show_stats_count_members_new_this_month";s:7:"comment";b:1;}s:56:"Hook_config_forum_show_stats_count_members_new_this_week";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:77:"sources/hooks/systems/config/forum_show_stats_count_members_new_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:77:"sources/hooks/systems/config/forum_show_stats_count_members_new_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:56:"Hook_config_forum_show_stats_count_members_new_this_week";s:7:"comment";b:1;}s:52:"Hook_config_forum_show_stats_count_members_new_today";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:73:"sources/hooks/systems/config/forum_show_stats_count_members_new_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:73:"sources/hooks/systems/config/forum_show_stats_count_members_new_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:52:"Hook_config_forum_show_stats_count_members_new_today";s:7:"comment";b:1;}s:40:"Hook_config_forum_show_stats_count_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/forum_show_stats_count_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/forum_show_stats_count_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_forum_show_stats_count_posts";s:7:"comment";b:1;}s:46:"Hook_config_forum_show_stats_count_posts_today";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/forum_show_stats_count_posts_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/forum_show_stats_count_posts_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:46:"Hook_config_forum_show_stats_count_posts_today";s:7:"comment";b:1;}s:41:"Hook_config_forum_show_stats_count_topics";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/forum_show_stats_count_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/forum_show_stats_count_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_forum_show_stats_count_topics";s:7:"comment";b:1;}s:33:"Hook_config_forum_topics_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/forum_topics_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/forum_topics_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_forum_topics_per_page";s:7:"comment";b:1;}s:20:"Hook_config_forw_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/forw_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/forw_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_forw_url";s:7:"comment";b:1;}s:30:"Hook_config_fractional_editing";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/fractional_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/fractional_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_fractional_editing";s:7:"comment";b:1;}s:40:"Hook_config_galleries_default_sort_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/galleries_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/galleries_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_galleries_default_sort_order";s:7:"comment";b:1;}s:48:"Hook_config_galleries_show_stats_count_galleries";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/galleries_show_stats_count_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/galleries_show_stats_count_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:48:"Hook_config_galleries_show_stats_count_galleries";s:7:"comment";b:1;}s:45:"Hook_config_galleries_show_stats_count_images";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/galleries_show_stats_count_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/galleries_show_stats_count_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:45:"Hook_config_galleries_show_stats_count_images";s:7:"comment";b:1;}s:45:"Hook_config_galleries_show_stats_count_videos";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/galleries_show_stats_count_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/galleries_show_stats_count_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:45:"Hook_config_galleries_show_stats_count_videos";s:7:"comment";b:1;}s:37:"Hook_config_galleries_subcat_narrowin";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/galleries_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/galleries_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_galleries_subcat_narrowin";s:7:"comment";b:1;}s:41:"Hook_config_gallery_entries_flow_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/gallery_entries_flow_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/gallery_entries_flow_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_gallery_entries_flow_per_page";s:7:"comment";b:1;}s:44:"Hook_config_gallery_entries_regular_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/gallery_entries_regular_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/gallery_entries_regular_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_gallery_entries_regular_per_page";s:7:"comment";b:1;}s:35:"Hook_config_gallery_feedback_fields";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/gallery_feedback_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/gallery_feedback_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_gallery_feedback_fields";s:7:"comment";b:1;}s:40:"Hook_config_gallery_media_title_required";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/gallery_media_title_required.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/gallery_media_title_required.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_gallery_media_title_required";s:7:"comment";b:1;}s:33:"Hook_config_gallery_member_synced";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/gallery_member_synced.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/gallery_member_synced.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_gallery_member_synced";s:7:"comment";b:1;}s:27:"Hook_config_gallery_mode_is";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/gallery_mode_is.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/gallery_mode_is.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_gallery_mode_is";s:7:"comment";b:1;}s:30:"Hook_config_gallery_name_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gallery_name_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gallery_name_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_gallery_name_order";s:7:"comment";b:1;}s:31:"Hook_config_gallery_permissions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/gallery_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/gallery_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_gallery_permissions";s:7:"comment";b:1;}s:29:"Hook_config_gallery_rep_image";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/gallery_rep_image.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/gallery_rep_image.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_gallery_rep_image";s:7:"comment";b:1;}s:29:"Hook_config_gallery_selectors";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/gallery_selectors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/gallery_selectors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_gallery_selectors";s:7:"comment";b:1;}s:30:"Hook_config_gallery_watermarks";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gallery_watermarks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gallery_watermarks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_gallery_watermarks";s:7:"comment";b:1;}s:40:"Hook_config_general_safety_listing_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/general_safety_listing_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/general_safety_listing_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_general_safety_listing_limit";s:7:"comment";b:1;}s:30:"Hook_config_gift_reward_amount";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gift_reward_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gift_reward_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_gift_reward_amount";s:7:"comment";b:1;}s:30:"Hook_config_gift_reward_chance";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gift_reward_chance.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gift_reward_chance.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_gift_reward_chance";s:7:"comment";b:1;}s:31:"Hook_config_global_donext_icons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/global_donext_icons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/global_donext_icons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_global_donext_icons";s:7:"comment";b:1;}s:28:"Hook_config_google_analytics";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/google_analytics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/google_analytics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_google_analytics";s:7:"comment";b:1;}s:34:"Hook_config_google_geocode_api_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/google_geocode_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/google_geocode_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_google_geocode_api_key";s:7:"comment";b:1;}s:36:"Hook_config_google_translate_api_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/google_translate_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/google_translate_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_google_translate_api_key";s:7:"comment";b:1;}s:35:"Hook_config_group_private_chatrooms";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/group_private_chatrooms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/group_private_chatrooms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_group_private_chatrooms";s:7:"comment";b:1;}s:23:"Hook_config_gzip_output";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/gzip_output.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/gzip_output.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_gzip_output";s:7:"comment";b:1;}s:30:"Hook_config_hack_ban_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/hack_ban_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/hack_ban_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_hack_ban_threshold";s:7:"comment";b:1;}s:32:"Hook_config_has_low_memory_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/has_low_memory_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/has_low_memory_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_has_low_memory_limit";s:7:"comment";b:1;}s:35:"Hook_config_header_menu_call_string";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/header_menu_call_string.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/header_menu_call_string.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_header_menu_call_string";s:7:"comment";b:1;}s:26:"Hook_config_highlight_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_highlight_name";s:7:"comment";b:1;}s:27:"Hook_config_honeypot_phrase";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/honeypot_phrase.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/honeypot_phrase.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_honeypot_phrase";s:7:"comment";b:1;}s:24:"Hook_config_honeypot_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/honeypot_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/honeypot_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_honeypot_url";s:7:"comment";b:1;}s:32:"Hook_config_hot_topic_definition";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/hot_topic_definition.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/hot_topic_definition.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_hot_topic_definition";s:7:"comment";b:1;}s:31:"Hook_config_httpauth_is_enabled";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/httpauth_is_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/httpauth_is_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_httpauth_is_enabled";s:7:"comment";b:1;}s:23:"Hook_config_imap_folder";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/imap_folder.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/imap_folder.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_imap_folder";s:7:"comment";b:1;}s:21:"Hook_config_imap_host";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/imap_host.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/imap_host.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_imap_host";s:7:"comment";b:1;}s:25:"Hook_config_imap_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/imap_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/imap_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_imap_password";s:7:"comment";b:1;}s:21:"Hook_config_imap_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/imap_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/imap_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_imap_port";s:7:"comment";b:1;}s:25:"Hook_config_imap_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/imap_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/imap_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_imap_username";s:7:"comment";b:1;}s:31:"Hook_config_immediate_downloads";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/immediate_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/immediate_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_immediate_downloads";s:7:"comment";b:1;}s:38:"Hook_config_implied_spammer_confidence";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/implied_spammer_confidence.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/implied_spammer_confidence.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_implied_spammer_confidence";s:7:"comment";b:1;}s:37:"Hook_config_important_groups_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/important_groups_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/important_groups_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_important_groups_per_page";s:7:"comment";b:1;}s:30:"Hook_config_infinite_scrolling";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/infinite_scrolling.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/infinite_scrolling.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_infinite_scrolling";s:7:"comment";b:1;}s:31:"Hook_config_initial_banner_hits";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/initial_banner_hits.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/initial_banner_hits.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_initial_banner_hits";s:7:"comment";b:1;}s:25:"Hook_config_initial_quota";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/initial_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/initial_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_initial_quota";s:7:"comment";b:1;}s:31:"Hook_config_inline_pp_advertise";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/inline_pp_advertise.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/inline_pp_advertise.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_inline_pp_advertise";s:7:"comment";b:1;}s:27:"Hook_config_interest_levels";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/interest_levels.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/interest_levels.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_interest_levels";s:7:"comment";b:1;}s:26:"Hook_config_intro_forum_id";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/intro_forum_id.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/intro_forum_id.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_intro_forum_id";s:7:"comment";b:1;}s:27:"Hook_config_invites_per_day";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/invites_per_day.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/invites_per_day.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_invites_per_day";s:7:"comment";b:1;}s:25:"Hook_config_ip_forwarding";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ip_forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ip_forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_ip_forwarding";s:7:"comment";b:1;}s:34:"Hook_config_ip_strict_for_sessions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/ip_strict_for_sessions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/ip_strict_for_sessions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_ip_strict_for_sessions";s:7:"comment";b:1;}s:15:"Hook_config_ipn";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/ipn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/ipn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:15:"Hook_config_ipn";s:7:"comment";b:1;}s:22:"Hook_config_ipn_digest";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/ipn_digest.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/ipn_digest.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_ipn_digest";s:7:"comment";b:1;}s:24:"Hook_config_ipn_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ipn_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ipn_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_ipn_password";s:7:"comment";b:1;}s:20:"Hook_config_ipn_test";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/ipn_test.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/ipn_test.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_ipn_test";s:7:"comment";b:1;}s:33:"Hook_config_is_on_anonymous_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/is_on_anonymous_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/is_on_anonymous_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_is_on_anonymous_posts";s:7:"comment";b:1;}s:43:"Hook_config_is_on_automatic_mark_topic_read";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/is_on_automatic_mark_topic_read.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/is_on_automatic_mark_topic_read.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_is_on_automatic_mark_topic_read";s:7:"comment";b:1;}s:28:"Hook_config_is_on_banner_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_banner_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_banner_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_is_on_banner_buy";s:7:"comment";b:1;}s:29:"Hook_config_is_on_block_cache";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_block_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_block_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_is_on_block_cache";s:7:"comment";b:1;}s:36:"Hook_config_is_on_comcode_page_cache";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_comcode_page_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_comcode_page_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_is_on_comcode_page_cache";s:7:"comment";b:1;}s:39:"Hook_config_is_on_comcode_page_children";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/is_on_comcode_page_children.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/is_on_comcode_page_children.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_is_on_comcode_page_children";s:7:"comment";b:1;}s:26:"Hook_config_is_on_comments";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_comments.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_comments.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_is_on_comments";s:7:"comment";b:1;}s:23:"Hook_config_is_on_coppa";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/is_on_coppa.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/is_on_coppa.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_is_on_coppa";s:7:"comment";b:1;}s:35:"Hook_config_is_on_emoticon_choosers";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/is_on_emoticon_choosers.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/is_on_emoticon_choosers.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_is_on_emoticon_choosers";s:7:"comment";b:1;}s:31:"Hook_config_is_on_folder_create";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/is_on_folder_create.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/is_on_folder_create.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_is_on_folder_create";s:7:"comment";b:1;}s:26:"Hook_config_is_on_forw_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_forw_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_forw_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_is_on_forw_buy";s:7:"comment";b:1;}s:30:"Hook_config_is_on_gambling_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_gambling_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_gambling_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_is_on_gambling_buy";s:7:"comment";b:1;}s:36:"Hook_config_is_on_highlight_name_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_highlight_name_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_highlight_name_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_is_on_highlight_name_buy";s:7:"comment";b:1;}s:30:"Hook_config_is_on_invisibility";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_invisibility.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_invisibility.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_is_on_invisibility";s:7:"comment";b:1;}s:25:"Hook_config_is_on_invites";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/is_on_invites.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/is_on_invites.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_is_on_invites";s:7:"comment";b:1;}s:28:"Hook_config_is_on_lang_cache";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_lang_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_lang_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_is_on_lang_cache";s:7:"comment";b:1;}s:26:"Hook_config_is_on_pop3_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_pop3_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_pop3_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_is_on_pop3_buy";s:7:"comment";b:1;}s:26:"Hook_config_is_on_post_map";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_post_map.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_post_map.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_is_on_post_map";s:7:"comment";b:1;}s:29:"Hook_config_is_on_post_titles";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_post_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_post_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_is_on_post_titles";s:7:"comment";b:1;}s:24:"Hook_config_is_on_rating";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/is_on_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/is_on_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_is_on_rating";s:7:"comment";b:1;}s:21:"Hook_config_is_on_rss";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/is_on_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/is_on_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_is_on_rss";s:7:"comment";b:1;}s:29:"Hook_config_is_on_show_online";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_show_online.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_show_online.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_is_on_show_online";s:7:"comment";b:1;}s:30:"Hook_config_is_on_staff_filter";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_staff_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_staff_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_is_on_staff_filter";s:7:"comment";b:1;}s:34:"Hook_config_is_on_strong_forum_tie";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/is_on_strong_forum_tie.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/is_on_strong_forum_tie.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_is_on_strong_forum_tie";s:7:"comment";b:1;}s:28:"Hook_config_is_on_sync_staff";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_sync_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_sync_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_is_on_sync_staff";s:7:"comment";b:1;}s:32:"Hook_config_is_on_template_cache";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/is_on_template_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/is_on_template_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_is_on_template_cache";s:7:"comment";b:1;}s:36:"Hook_config_is_on_timezone_detection";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_timezone_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_timezone_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_is_on_timezone_detection";s:7:"comment";b:1;}s:36:"Hook_config_is_on_topic_descriptions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_topic_descriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_topic_descriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_is_on_topic_descriptions";s:7:"comment";b:1;}s:33:"Hook_config_is_on_topic_emoticons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/is_on_topic_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/is_on_topic_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_is_on_topic_emoticons";s:7:"comment";b:1;}s:31:"Hook_config_is_on_topic_pin_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/is_on_topic_pin_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/is_on_topic_pin_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_is_on_topic_pin_buy";s:7:"comment";b:1;}s:28:"Hook_config_is_on_trackbacks";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_is_on_trackbacks";s:7:"comment";b:1;}s:29:"Hook_config_is_rss_advertised";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_rss_advertised.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_rss_advertised.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_is_rss_advertised";s:7:"comment";b:1;}s:24:"Hook_config_jpeg_quality";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/jpeg_quality.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/jpeg_quality.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_jpeg_quality";s:7:"comment";b:1;}s:22:"Hook_config_js_captcha";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/js_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/js_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_js_captcha";s:7:"comment";b:1;}s:23:"Hook_config_js_overlays";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/js_overlays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/js_overlays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_js_overlays";s:7:"comment";b:1;}s:29:"Hook_config_keyset_pagination";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/keyset_pagination.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/keyset_pagination.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_keyset_pagination";s:7:"comment";b:1;}s:20:"Hook_config_keywords";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/keywords.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/keywords.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_keywords";s:7:"comment";b:1;}s:23:"Hook_config_lax_comcode";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/lax_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/lax_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_lax_comcode";s:7:"comment";b:1;}s:30:"Hook_config_ldap_allow_joining";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ldap_allow_joining.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ldap_allow_joining.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ldap_allow_joining";s:7:"comment";b:1;}s:24:"Hook_config_ldap_base_dn";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ldap_base_dn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ldap_base_dn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_ldap_base_dn";s:7:"comment";b:1;}s:30:"Hook_config_ldap_bind_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ldap_bind_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ldap_bind_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ldap_bind_password";s:7:"comment";b:1;}s:25:"Hook_config_ldap_bind_rdn";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ldap_bind_rdn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ldap_bind_rdn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_ldap_bind_rdn";s:7:"comment";b:1;}s:28:"Hook_config_ldap_group_class";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/ldap_group_class.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/ldap_group_class.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_ldap_group_class";s:7:"comment";b:1;}s:39:"Hook_config_ldap_group_search_qualifier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/ldap_group_search_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/ldap_group_search_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_ldap_group_search_qualifier";s:7:"comment";b:1;}s:25:"Hook_config_ldap_hostname";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ldap_hostname.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ldap_hostname.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_ldap_hostname";s:7:"comment";b:1;}s:27:"Hook_config_ldap_is_enabled";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/ldap_is_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/ldap_is_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_ldap_is_enabled";s:7:"comment";b:1;}s:27:"Hook_config_ldap_is_windows";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/ldap_is_windows.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/ldap_is_windows.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_ldap_is_windows";s:7:"comment";b:1;}s:32:"Hook_config_ldap_login_qualifier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ldap_login_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ldap_login_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ldap_login_qualifier";s:7:"comment";b:1;}s:29:"Hook_config_ldap_member_class";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ldap_member_class.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ldap_member_class.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_ldap_member_class";s:7:"comment";b:1;}s:32:"Hook_config_ldap_member_property";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ldap_member_property.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ldap_member_property.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ldap_member_property";s:7:"comment";b:1;}s:40:"Hook_config_ldap_member_search_qualifier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/ldap_member_search_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/ldap_member_search_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_ldap_member_search_qualifier";s:7:"comment";b:1;}s:33:"Hook_config_ldap_none_bind_logins";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/ldap_none_bind_logins.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/ldap_none_bind_logins.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_ldap_none_bind_logins";s:7:"comment";b:1;}s:24:"Hook_config_ldap_version";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ldap_version.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ldap_version.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_ldap_version";s:7:"comment";b:1;}s:35:"Hook_config_leader_board_show_staff";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/leader_board_show_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/leader_board_show_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_leader_board_show_staff";s:7:"comment";b:1;}s:29:"Hook_config_leader_board_size";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/leader_board_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/leader_board_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_leader_board_size";s:7:"comment";b:1;}s:35:"Hook_config_leader_board_start_date";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/leader_board_start_date.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/leader_board_start_date.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_leader_board_start_date";s:7:"comment";b:1;}s:17:"Hook_config_likes";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/likes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/likes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:17:"Hook_config_likes";s:7:"comment";b:1;}s:31:"Hook_config_login_error_secrecy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/login_error_secrecy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/login_error_secrecy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_login_error_secrecy";s:7:"comment";b:1;}s:31:"Hook_config_long_google_cookies";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/long_google_cookies.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/long_google_cookies.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_long_google_cookies";s:7:"comment";b:1;}s:27:"Hook_config_low_space_check";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/low_space_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/low_space_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_low_space_check";s:7:"comment";b:1;}s:22:"Hook_config_mail_queue";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/mail_queue.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/mail_queue.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_mail_queue";s:7:"comment";b:1;}s:28:"Hook_config_mail_queue_debug";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/mail_queue_debug.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/mail_queue_debug.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_mail_queue_debug";s:7:"comment";b:1;}s:23:"Hook_config_mail_server";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/mail_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/mail_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_mail_server";s:7:"comment";b:1;}s:26:"Hook_config_mails_per_send";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/mails_per_send.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/mails_per_send.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_mails_per_send";s:7:"comment";b:1;}s:27:"Hook_config_main_forum_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/main_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/main_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_main_forum_name";s:7:"comment";b:1;}s:35:"Hook_config_manual_gallery_codename";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/manual_gallery_codename.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/manual_gallery_codename.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_manual_gallery_codename";s:7:"comment";b:1;}s:38:"Hook_config_manual_gallery_media_types";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/manual_gallery_media_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/manual_gallery_media_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_manual_gallery_media_types";s:7:"comment";b:1;}s:33:"Hook_config_manual_gallery_parent";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/manual_gallery_parent.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/manual_gallery_parent.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_manual_gallery_parent";s:7:"comment";b:1;}s:45:"Hook_config_manual_subscription_expiry_notice";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/manual_subscription_expiry_notice.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/manual_subscription_expiry_notice.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:45:"Hook_config_manual_subscription_expiry_notice";s:7:"comment";b:1;}s:34:"Hook_config_max_chat_lobby_friends";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/max_chat_lobby_friends.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/max_chat_lobby_friends.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_max_chat_lobby_friends";s:7:"comment";b:1;}s:29:"Hook_config_max_download_size";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/max_download_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/max_download_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_max_download_size";s:7:"comment";b:1;}s:28:"Hook_config_max_forum_detail";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/max_forum_detail.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/max_forum_detail.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_max_forum_detail";s:7:"comment";b:1;}s:29:"Hook_config_max_forum_inspect";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/max_forum_inspect.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/max_forum_inspect.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_max_forum_inspect";s:7:"comment";b:1;}s:43:"Hook_config_max_ip_addresses_per_subscriber";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_ip_addresses_per_subscriber.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_ip_addresses_per_subscriber.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_max_ip_addresses_per_subscriber";s:7:"comment";b:1;}s:35:"Hook_config_max_member_title_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/max_member_title_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/max_member_title_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_max_member_title_length";s:7:"comment";b:1;}s:30:"Hook_config_max_moniker_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/max_moniker_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/max_moniker_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_max_moniker_length";s:7:"comment";b:1;}s:35:"Hook_config_max_newsletter_whatsnew";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/max_newsletter_whatsnew.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/max_newsletter_whatsnew.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_max_newsletter_whatsnew";s:7:"comment";b:1;}s:44:"Hook_config_max_personal_gallery_images_high";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/max_personal_gallery_images_high.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/max_personal_gallery_images_high.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_max_personal_gallery_images_high";s:7:"comment";b:1;}s:43:"Hook_config_max_personal_gallery_images_low";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_personal_gallery_images_low.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_personal_gallery_images_low.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_max_personal_gallery_images_low";s:7:"comment";b:1;}s:44:"Hook_config_max_personal_gallery_videos_high";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/max_personal_gallery_videos_high.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/max_personal_gallery_videos_high.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_max_personal_gallery_videos_high";s:7:"comment";b:1;}s:43:"Hook_config_max_personal_gallery_videos_low";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_personal_gallery_videos_low.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_personal_gallery_videos_low.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_max_personal_gallery_videos_low";s:7:"comment";b:1;}s:21:"Hook_config_max_quota";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/max_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/max_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_max_quota";s:7:"comment";b:1;}s:28:"Hook_config_max_thread_depth";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/max_thread_depth.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/max_thread_depth.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_max_thread_depth";s:7:"comment";b:1;}s:44:"Hook_config_maximum_autocomplete_suggestions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/maximum_autocomplete_suggestions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/maximum_autocomplete_suggestions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_maximum_autocomplete_suggestions";s:7:"comment";b:1;}s:28:"Hook_config_maximum_download";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/maximum_download.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/maximum_download.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_maximum_download";s:7:"comment";b:1;}s:33:"Hook_config_maximum_gamble_amount";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/maximum_gamble_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/maximum_gamble_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_maximum_gamble_amount";s:7:"comment";b:1;}s:37:"Hook_config_maximum_gamble_multiplier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/maximum_gamble_multiplier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/maximum_gamble_multiplier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_maximum_gamble_multiplier";s:7:"comment";b:1;}s:30:"Hook_config_maximum_image_size";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/maximum_image_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/maximum_image_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_maximum_image_size";s:7:"comment";b:1;}s:35:"Hook_config_maximum_password_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/maximum_password_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/maximum_password_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_maximum_password_length";s:7:"comment";b:1;}s:35:"Hook_config_maximum_username_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/maximum_username_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/maximum_username_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_maximum_username_length";s:7:"comment";b:1;}s:25:"Hook_config_maximum_users";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/maximum_users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/maximum_users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_maximum_users";s:7:"comment";b:1;}s:33:"Hook_config_md_default_sort_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/md_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/md_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_md_default_sort_order";s:7:"comment";b:1;}s:28:"Hook_config_members_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_members_per_page";s:7:"comment";b:1;}s:35:"Hook_config_message_received_emails";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/message_received_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/message_received_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_message_received_emails";s:7:"comment";b:1;}s:32:"Hook_config_messaging_forum_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/messaging_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/messaging_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_messaging_forum_name";s:7:"comment";b:1;}s:39:"Hook_config_minimum_autocomplete_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/minimum_autocomplete_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/minimum_autocomplete_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_minimum_autocomplete_length";s:7:"comment";b:1;}s:44:"Hook_config_minimum_autocomplete_past_search";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/minimum_autocomplete_past_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/minimum_autocomplete_past_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_minimum_autocomplete_past_search";s:7:"comment";b:1;}s:33:"Hook_config_minimum_gamble_amount";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/minimum_gamble_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/minimum_gamble_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_minimum_gamble_amount";s:7:"comment";b:1;}s:35:"Hook_config_minimum_password_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/minimum_password_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/minimum_password_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_minimum_password_length";s:7:"comment";b:1;}s:37:"Hook_config_minimum_password_strength";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/minimum_password_strength.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/minimum_password_strength.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_minimum_password_strength";s:7:"comment";b:1;}s:35:"Hook_config_minimum_username_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/minimum_username_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/minimum_username_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_minimum_username_length";s:7:"comment";b:1;}s:33:"Hook_config_minutes_between_sends";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/minutes_between_sends.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/minutes_between_sends.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_minutes_between_sends";s:7:"comment";b:1;}s:26:"Hook_config_mobile_support";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/mobile_support.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/mobile_support.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_mobile_support";s:7:"comment";b:1;}s:22:"Hook_config_modal_user";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/modal_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/modal_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_modal_user";s:7:"comment";b:1;}s:35:"Hook_config_moniker_transliteration";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/moniker_transliteration.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/moniker_transliteration.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_moniker_transliteration";s:7:"comment";b:1;}s:25:"Hook_config_network_links";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/network_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/network_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_network_links";s:7:"comment";b:1;}s:36:"Hook_config_news_categories_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/news_categories_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/news_categories_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_news_categories_per_page";s:7:"comment";b:1;}s:33:"Hook_config_news_entries_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/news_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/news_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_news_entries_per_page";s:7:"comment";b:1;}s:39:"Hook_config_news_show_stats_count_blogs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/news_show_stats_count_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/news_show_stats_count_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_news_show_stats_count_blogs";s:7:"comment";b:1;}s:45:"Hook_config_news_show_stats_count_total_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/news_show_stats_count_total_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/news_show_stats_count_total_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:45:"Hook_config_news_show_stats_count_total_posts";s:7:"comment";b:1;}s:33:"Hook_config_news_summary_required";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/news_summary_required.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/news_summary_required.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_news_summary_required";s:7:"comment";b:1;}s:28:"Hook_config_news_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/news_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/news_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_news_update_time";s:7:"comment";b:1;}s:27:"Hook_config_newsletter_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/newsletter_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/newsletter_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_newsletter_text";s:7:"comment";b:1;}s:28:"Hook_config_newsletter_title";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/newsletter_title.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/newsletter_title.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_newsletter_title";s:7:"comment";b:1;}s:34:"Hook_config_newsletter_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/newsletter_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/newsletter_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_newsletter_update_time";s:7:"comment";b:1;}s:34:"Hook_config_normal_groups_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/normal_groups_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/normal_groups_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_normal_groups_per_page";s:7:"comment";b:1;}s:39:"Hook_config_notification_desktop_alerts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_desktop_alerts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_desktop_alerts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_notification_desktop_alerts";s:7:"comment";b:1;}s:39:"Hook_config_notification_enable_digests";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_enable_digests.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_enable_digests.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_notification_enable_digests";s:7:"comment";b:1;}s:46:"Hook_config_notification_enable_private_topics";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/notification_enable_private_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/notification_enable_private_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:46:"Hook_config_notification_enable_private_topics";s:7:"comment";b:1;}s:34:"Hook_config_notification_keep_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/notification_keep_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/notification_keep_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_notification_keep_days";s:7:"comment";b:1;}s:39:"Hook_config_notification_poll_frequency";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_poll_frequency.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_poll_frequency.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_notification_poll_frequency";s:7:"comment";b:1;}s:33:"Hook_config_oembed_html_whitelist";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/oembed_html_whitelist.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/oembed_html_whitelist.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_oembed_html_whitelist";s:7:"comment";b:1;}s:34:"Hook_config_oembed_manual_patterns";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/oembed_manual_patterns.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/oembed_manual_patterns.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_oembed_manual_patterns";s:7:"comment";b:1;}s:27:"Hook_config_oembed_max_size";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/oembed_max_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/oembed_max_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_oembed_max_size";s:7:"comment";b:1;}s:33:"Hook_config_one_per_email_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/one_per_email_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/one_per_email_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_one_per_email_address";s:7:"comment";b:1;}s:28:"Hook_config_output_streaming";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/output_streaming.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/output_streaming.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_output_streaming";s:7:"comment";b:1;}s:36:"Hook_config_overt_whisper_suggestion";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/overt_whisper_suggestion.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/overt_whisper_suggestion.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_overt_whisper_suggestion";s:7:"comment";b:1;}s:32:"Hook_config_password_change_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/password_change_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/password_change_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_password_change_days";s:7:"comment";b:1;}s:28:"Hook_config_password_cookies";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/password_cookies.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/password_cookies.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_password_cookies";s:7:"comment";b:1;}s:32:"Hook_config_password_expiry_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/password_expiry_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/password_expiry_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_password_expiry_days";s:7:"comment";b:1;}s:34:"Hook_config_password_reset_process";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/password_reset_process.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/password_reset_process.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_password_reset_process";s:7:"comment";b:1;}s:27:"Hook_config_payment_gateway";a:3:{s:9:"functions";a:3:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/payment_gateway.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/payment_gateway.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}s:14:"field_inputter";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/payment_gateway.php";s:10:"parameters";a:4:{i:0;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 config option name";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"myrow";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The config row";s:11:"phpdoc_name";s:5:"myrow";}i:2;a:5:{s:4:"name";s:10:"human_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The field title";s:11:"phpdoc_name";s:10:"human_name";}i:3;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:11:"explanation";}}s:4:"name";s:14:"field_inputter";s:11:"description";s:42:"Field inputter (because the_type=special).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The inputter";}}}s:4:"name";s:27:"Hook_config_payment_gateway";s:7:"comment";b:1;}s:22:"Hook_config_pd_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/pd_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/pd_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_pd_address";s:7:"comment";b:1;}s:20:"Hook_config_pd_email";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/pd_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/pd_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_pd_email";s:7:"comment";b:1;}s:21:"Hook_config_pd_number";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/pd_number.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/pd_number.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_pd_number";s:7:"comment";b:1;}s:34:"Hook_config_personal_under_members";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/personal_under_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/personal_under_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_personal_under_members";s:7:"comment";b:1;}s:20:"Hook_config_ping_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/ping_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/ping_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_ping_url";s:7:"comment";b:1;}s:31:"Hook_config_point_logs_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/point_logs_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/point_logs_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_point_logs_per_page";s:7:"comment";b:1;}s:29:"Hook_config_points_ADD_BANNER";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/points_ADD_BANNER.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/points_ADD_BANNER.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_points_ADD_BANNER";s:7:"comment";b:1;}s:31:"Hook_config_points_ADD_DOWNLOAD";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/points_ADD_DOWNLOAD.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/points_ADD_DOWNLOAD.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_points_ADD_DOWNLOAD";s:7:"comment";b:1;}s:28:"Hook_config_points_ADD_IMAGE";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/points_ADD_IMAGE.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/points_ADD_IMAGE.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_points_ADD_IMAGE";s:7:"comment";b:1;}s:27:"Hook_config_points_ADD_NEWS";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_NEWS.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_NEWS.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_points_ADD_NEWS";s:7:"comment";b:1;}s:27:"Hook_config_points_ADD_POLL";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_POLL.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_POLL.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_points_ADD_POLL";s:7:"comment";b:1;}s:27:"Hook_config_points_ADD_QUIZ";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_QUIZ.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_QUIZ.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_points_ADD_QUIZ";s:7:"comment";b:1;}s:28:"Hook_config_points_ADD_VIDEO";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/points_ADD_VIDEO.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/points_ADD_VIDEO.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_points_ADD_VIDEO";s:7:"comment";b:1;}s:23:"Hook_config_points_chat";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/points_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/points_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_points_chat";s:7:"comment";b:1;}s:30:"Hook_config_points_CHOOSE_POLL";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/points_CHOOSE_POLL.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/points_CHOOSE_POLL.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_points_CHOOSE_POLL";s:7:"comment";b:1;}s:35:"Hook_config_points_COMCODE_PAGE_ADD";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/points_COMCODE_PAGE_ADD.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/points_COMCODE_PAGE_ADD.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_points_COMCODE_PAGE_ADD";s:7:"comment";b:1;}s:27:"Hook_config_points_if_liked";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_if_liked.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_if_liked.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_points_if_liked";s:7:"comment";b:1;}s:26:"Hook_config_points_joining";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_joining.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_joining.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_points_joining";s:7:"comment";b:1;}s:36:"Hook_config_points_per_currency_unit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/points_per_currency_unit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/points_per_currency_unit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_points_per_currency_unit";s:7:"comment";b:1;}s:34:"Hook_config_points_per_daily_visit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/points_per_daily_visit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/points_per_daily_visit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_points_per_daily_visit";s:7:"comment";b:1;}s:26:"Hook_config_points_per_day";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_per_day.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_per_day.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_points_per_day";s:7:"comment";b:1;}s:26:"Hook_config_points_posting";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_posting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_posting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_points_posting";s:7:"comment";b:1;}s:25:"Hook_config_points_rating";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/points_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/points_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_points_rating";s:7:"comment";b:1;}s:33:"Hook_config_points_RECOMMEND_SITE";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/points_RECOMMEND_SITE.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/points_RECOMMEND_SITE.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_points_RECOMMEND_SITE";s:7:"comment";b:1;}s:55:"Hook_config_points_show_personal_stats_gift_points_left";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/points_show_personal_stats_gift_points_left.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/points_show_personal_stats_gift_points_left.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:55:"Hook_config_points_show_personal_stats_gift_points_left";s:7:"comment";b:1;}s:55:"Hook_config_points_show_personal_stats_gift_points_used";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/points_show_personal_stats_gift_points_used.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/points_show_personal_stats_gift_points_used.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:55:"Hook_config_points_show_personal_stats_gift_points_used";s:7:"comment";b:1;}s:50:"Hook_config_points_show_personal_stats_points_left";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/points_show_personal_stats_points_left.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/points_show_personal_stats_points_left.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:50:"Hook_config_points_show_personal_stats_points_left";s:7:"comment";b:1;}s:50:"Hook_config_points_show_personal_stats_points_used";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/points_show_personal_stats_points_used.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/points_show_personal_stats_points_used.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:50:"Hook_config_points_show_personal_stats_points_used";s:7:"comment";b:1;}s:51:"Hook_config_points_show_personal_stats_total_points";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:72:"sources/hooks/systems/config/points_show_personal_stats_total_points.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:72:"sources/hooks/systems/config/points_show_personal_stats_total_points.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:51:"Hook_config_points_show_personal_stats_total_points";s:7:"comment";b:1;}s:25:"Hook_config_points_voting";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/points_voting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/points_voting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_points_voting";s:7:"comment";b:1;}s:23:"Hook_config_points_wiki";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/points_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/points_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_points_wiki";s:7:"comment";b:1;}s:28:"Hook_config_poll_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/poll_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/poll_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_poll_update_time";s:7:"comment";b:1;}s:19:"Hook_config_pop_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/pop_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/pop_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:19:"Hook_config_pop_url";s:7:"comment";b:1;}s:34:"Hook_config_post_read_history_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/post_read_history_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/post_read_history_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_post_read_history_days";s:7:"comment";b:1;}s:36:"Hook_config_primary_members_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/primary_members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/primary_members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_primary_members_per_page";s:7:"comment";b:1;}s:32:"Hook_config_primary_paypal_email";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/primary_paypal_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/primary_paypal_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_primary_paypal_email";s:7:"comment";b:1;}s:23:"Hook_config_privacy_fax";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/privacy_fax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/privacy_fax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_privacy_fax";s:7:"comment";b:1;}s:34:"Hook_config_privacy_postal_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/privacy_postal_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/privacy_postal_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_privacy_postal_address";s:7:"comment";b:1;}s:35:"Hook_config_private_topics_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/private_topics_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/private_topics_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_private_topics_per_page";s:7:"comment";b:1;}s:31:"Hook_config_probation_usergroup";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/probation_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/probation_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_probation_usergroup";s:7:"comment";b:1;}s:40:"Hook_config_prohibit_password_whitespace";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/prohibit_password_whitespace.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/prohibit_password_whitespace.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_prohibit_password_whitespace";s:7:"comment";b:1;}s:40:"Hook_config_prohibit_username_whitespace";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/prohibit_username_whitespace.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/prohibit_username_whitespace.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_prohibit_username_whitespace";s:7:"comment";b:1;}s:17:"Hook_config_proxy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/proxy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/proxy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:17:"Hook_config_proxy";s:7:"comment";b:1;}s:26:"Hook_config_proxy_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/proxy_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/proxy_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_proxy_password";s:7:"comment";b:1;}s:22:"Hook_config_proxy_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/proxy_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/proxy_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_proxy_port";s:7:"comment";b:1;}s:22:"Hook_config_proxy_user";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/proxy_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/proxy_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_proxy_user";s:7:"comment";b:1;}s:35:"Hook_config_pt_notifications_as_web";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/pt_notifications_as_web.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/pt_notifications_as_web.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_pt_notifications_as_web";s:7:"comment";b:1;}s:44:"Hook_config_quiz_show_stats_count_total_open";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/quiz_show_stats_count_total_open.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/quiz_show_stats_count_total_open.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_quiz_show_stats_count_total_open";s:7:"comment";b:1;}s:17:"Hook_config_quota";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:17:"Hook_config_quota";s:7:"comment";b:1;}s:21:"Hook_config_quota_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/quota_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/quota_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_quota_url";s:7:"comment";b:1;}s:26:"Hook_config_random_avatars";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/random_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/random_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_random_avatars";s:7:"comment";b:1;}s:34:"Hook_config_remember_me_by_default";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/remember_me_by_default.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/remember_me_by_default.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_remember_me_by_default";s:7:"comment";b:1;}s:32:"Hook_config_reported_posts_forum";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/reported_posts_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/reported_posts_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_reported_posts_forum";s:7:"comment";b:1;}s:41:"Hook_config_require_new_member_validation";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/require_new_member_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/require_new_member_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_require_new_member_validation";s:7:"comment";b:1;}s:32:"Hook_config_restricted_usernames";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/restricted_usernames.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/restricted_usernames.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_restricted_usernames";s:7:"comment";b:1;}s:31:"Hook_config_reverse_thumb_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/reverse_thumb_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/reverse_thumb_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_reverse_thumb_order";s:7:"comment";b:1;}s:33:"Hook_config_root_zone_login_theme";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/root_zone_login_theme.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/root_zone_login_theme.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_root_zone_login_theme";s:7:"comment";b:1;}s:27:"Hook_config_rss_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/rss_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/rss_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_rss_update_time";s:7:"comment";b:1;}s:35:"Hook_config_search_results_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/search_results_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/search_results_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_search_results_per_page";s:7:"comment";b:1;}s:34:"Hook_config_search_with_date_range";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/search_with_date_range.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/search_with_date_range.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_search_with_date_range";s:7:"comment";b:1;}s:38:"Hook_config_secondary_members_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/secondary_members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/secondary_members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_secondary_members_per_page";s:7:"comment";b:1;}s:37:"Hook_config_security_token_exceptions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/security_token_exceptions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/security_token_exceptions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_security_token_exceptions";s:7:"comment";b:1;}s:40:"Hook_config_send_error_emails_ocproducts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/send_error_emails_ocproducts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/send_error_emails_ocproducts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_send_error_emails_ocproducts";s:7:"comment";b:1;}s:24:"Hook_config_seq_post_ids";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/seq_post_ids.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/seq_post_ids.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_seq_post_ids";s:7:"comment";b:1;}s:31:"Hook_config_session_expiry_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/session_expiry_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/session_expiry_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_session_expiry_time";s:7:"comment";b:1;}s:28:"Hook_config_session_prudence";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/session_prudence.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/session_prudence.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_session_prudence";s:7:"comment";b:1;}s:32:"Hook_config_shipping_cost_factor";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/shipping_cost_factor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/shipping_cost_factor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_shipping_cost_factor";s:7:"comment";b:1;}s:23:"Hook_config_show_avatar";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/show_avatar.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/show_avatar.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_show_avatar";s:7:"comment";b:1;}s:35:"Hook_config_show_conceded_mode_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_conceded_mode_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_conceded_mode_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_show_conceded_mode_link";s:7:"comment";b:1;}s:32:"Hook_config_show_content_tagging";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_content_tagging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_content_tagging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_show_content_tagging";s:7:"comment";b:1;}s:39:"Hook_config_show_content_tagging_inline";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/show_content_tagging_inline.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/show_content_tagging_inline.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_show_content_tagging_inline";s:7:"comment";b:1;}s:21:"Hook_config_show_docs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/show_docs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/show_docs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_show_docs";s:7:"comment";b:1;}s:27:"Hook_config_show_empty_cpfs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/show_empty_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/show_empty_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_show_empty_cpfs";s:7:"comment";b:1;}s:32:"Hook_config_show_empty_galleries";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_empty_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_empty_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_show_empty_galleries";s:7:"comment";b:1;}s:32:"Hook_config_show_first_join_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_first_join_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_first_join_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_show_first_join_page";s:7:"comment";b:1;}s:31:"Hook_config_show_gallery_counts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/show_gallery_counts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/show_gallery_counts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_show_gallery_counts";s:7:"comment";b:1;}s:29:"Hook_config_show_inline_stats";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/show_inline_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/show_inline_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_show_inline_stats";s:7:"comment";b:1;}s:40:"Hook_config_show_personal_adminzone_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/show_personal_adminzone_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/show_personal_adminzone_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_show_personal_adminzone_link";s:7:"comment";b:1;}s:36:"Hook_config_show_personal_last_visit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/show_personal_last_visit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/show_personal_last_visit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_show_personal_last_visit";s:7:"comment";b:1;}s:35:"Hook_config_show_personal_sub_links";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_personal_sub_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_personal_sub_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_show_personal_sub_links";s:7:"comment";b:1;}s:35:"Hook_config_show_personal_usergroup";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_personal_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_personal_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_show_personal_usergroup";s:7:"comment";b:1;}s:32:"Hook_config_show_post_validation";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_post_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_post_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_show_post_validation";s:7:"comment";b:1;}s:31:"Hook_config_show_screen_actions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/show_screen_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/show_screen_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_show_screen_actions";s:7:"comment";b:1;}s:35:"Hook_config_show_staff_page_actions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_staff_page_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_staff_page_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_show_staff_page_actions";s:7:"comment";b:1;}s:19:"Hook_config_show_su";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/show_su.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/show_su.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:19:"Hook_config_show_su";s:7:"comment";b:1;}s:37:"Hook_config_simplified_attachments_ui";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/simplified_attachments_ui.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/simplified_attachments_ui.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_simplified_attachments_ui";s:7:"comment";b:1;}s:29:"Hook_config_simplified_donext";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/simplified_donext.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/simplified_donext.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_simplified_donext";s:7:"comment";b:1;}s:43:"Hook_config_simplify_wysiwyg_by_permissions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/simplify_wysiwyg_by_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/simplify_wysiwyg_by_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_simplify_wysiwyg_by_permissions";s:7:"comment";b:1;}s:23:"Hook_config_site_closed";a:3:{s:9:"functions";a:3:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/site_closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/site_closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}s:14:"field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/site_closed.php";s:10:"parameters";a:4:{i:0;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 config option name";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"myrow";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The config row";s:11:"phpdoc_name";s:5:"myrow";}i:2;a:5:{s:4:"name";s:10:"human_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The field title";s:11:"phpdoc_name";s:10:"human_name";}i:3;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:11:"explanation";}}s:4:"name";s:14:"field_inputter";s:11:"description";s:42:"Field inputter (because the_type=special).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The inputter";}}}s:4:"name";s:23:"Hook_config_site_closed";s:7:"comment";b:1;}s:21:"Hook_config_site_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/site_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/site_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_site_name";s:7:"comment";b:1;}s:22:"Hook_config_site_scope";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/site_scope.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/site_scope.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_site_scope";s:7:"comment";b:1;}s:23:"Hook_config_sitewide_im";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/sitewide_im.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/sitewide_im.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_sitewide_im";s:7:"comment";b:1;}s:22:"Hook_config_sms_api_id";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/sms_api_id.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/sms_api_id.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_sms_api_id";s:7:"comment";b:1;}s:26:"Hook_config_sms_high_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/sms_high_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/sms_high_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_sms_high_limit";s:7:"comment";b:1;}s:34:"Hook_config_sms_high_trigger_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/sms_high_trigger_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/sms_high_trigger_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_sms_high_trigger_limit";s:7:"comment";b:1;}s:25:"Hook_config_sms_low_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/sms_low_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/sms_low_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_sms_low_limit";s:7:"comment";b:1;}s:33:"Hook_config_sms_low_trigger_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/sms_low_trigger_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/sms_low_trigger_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_sms_low_trigger_limit";s:7:"comment";b:1;}s:24:"Hook_config_sms_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/sms_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/sms_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_sms_password";s:7:"comment";b:1;}s:24:"Hook_config_sms_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/sms_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/sms_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_sms_username";s:7:"comment";b:1;}s:29:"Hook_config_smtp_from_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_from_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_from_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_smtp_from_address";s:7:"comment";b:1;}s:29:"Hook_config_smtp_sockets_host";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_sockets_host.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_sockets_host.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_smtp_sockets_host";s:7:"comment";b:1;}s:33:"Hook_config_smtp_sockets_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/smtp_sockets_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/smtp_sockets_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_smtp_sockets_password";s:7:"comment";b:1;}s:29:"Hook_config_smtp_sockets_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_sockets_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_sockets_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_smtp_sockets_port";s:7:"comment";b:1;}s:28:"Hook_config_smtp_sockets_use";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/smtp_sockets_use.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/smtp_sockets_use.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_smtp_sockets_use";s:7:"comment";b:1;}s:33:"Hook_config_smtp_sockets_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/smtp_sockets_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/smtp_sockets_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_smtp_sockets_username";s:7:"comment";b:1;}s:35:"Hook_config_spam_approval_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/spam_approval_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/spam_approval_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_spam_approval_threshold";s:7:"comment";b:1;}s:30:"Hook_config_spam_ban_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/spam_ban_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/spam_ban_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_spam_ban_threshold";s:7:"comment";b:1;}s:36:"Hook_config_spam_blackhole_detection";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/spam_blackhole_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/spam_blackhole_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_spam_blackhole_detection";s:7:"comment";b:1;}s:28:"Hook_config_spam_block_lists";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/spam_block_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/spam_block_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_spam_block_lists";s:7:"comment";b:1;}s:32:"Hook_config_spam_block_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_block_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_block_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_spam_block_threshold";s:7:"comment";b:1;}s:27:"Hook_config_spam_cache_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/spam_cache_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/spam_cache_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_spam_cache_time";s:7:"comment";b:1;}s:33:"Hook_config_spam_check_exclusions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/spam_check_exclusions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/spam_check_exclusions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_spam_check_exclusions";s:7:"comment";b:1;}s:28:"Hook_config_spam_check_level";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/spam_check_level.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/spam_check_level.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_spam_check_level";s:7:"comment";b:1;}s:32:"Hook_config_spam_check_usernames";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_check_usernames.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_check_usernames.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_spam_check_usernames";s:7:"comment";b:1;}s:32:"Hook_config_spam_stale_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_stale_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_stale_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_spam_stale_threshold";s:7:"comment";b:1;}s:15:"Hook_config_ssw";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/ssw.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/ssw.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:15:"Hook_config_ssw";s:7:"comment";b:1;}s:25:"Hook_config_staff_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/staff_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/staff_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_staff_address";s:7:"comment";b:1;}s:22:"Hook_config_staff_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/staff_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/staff_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_staff_text";s:7:"comment";b:1;}s:28:"Hook_config_stats_store_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/stats_store_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/stats_store_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_stats_store_time";s:7:"comment";b:1;}s:29:"Hook_config_stats_when_closed";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/stats_when_closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/stats_when_closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_stats_when_closed";s:7:"comment";b:1;}s:33:"Hook_config_stopforumspam_api_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/stopforumspam_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/stopforumspam_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_stopforumspam_api_key";s:7:"comment";b:1;}s:27:"Hook_config_store_revisions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/store_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/store_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_store_revisions";s:7:"comment";b:1;}s:33:"Hook_config_subgallery_link_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/subgallery_link_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/subgallery_link_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_subgallery_link_limit";s:7:"comment";b:1;}s:25:"Hook_config_super_logging";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/super_logging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/super_logging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_super_logging";s:7:"comment";b:1;}s:29:"Hook_config_supermembers_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/supermembers_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/supermembers_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_supermembers_text";s:7:"comment";b:1;}s:28:"Hook_config_support_operator";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/support_operator.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/support_operator.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_support_operator";s:7:"comment";b:1;}s:28:"Hook_config_tasks_background";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/tasks_background.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/tasks_background.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_tasks_background";s:7:"comment";b:1;}s:28:"Hook_config_threaded_buttons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/threaded_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/threaded_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_threaded_buttons";s:7:"comment";b:1;}s:23:"Hook_config_thumb_width";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/thumb_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/thumb_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_thumb_width";s:7:"comment";b:1;}s:30:"Hook_config_ticket_auto_assign";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_auto_assign.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_auto_assign.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ticket_auto_assign";s:7:"comment";b:1;}s:29:"Hook_config_ticket_email_from";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ticket_email_from.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ticket_email_from.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_ticket_email_from";s:7:"comment";b:1;}s:29:"Hook_config_ticket_forum_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ticket_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ticket_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_ticket_forum_name";s:7:"comment";b:1;}s:26:"Hook_config_ticket_mail_on";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/ticket_mail_on.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/ticket_mail_on.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_ticket_mail_on";s:7:"comment";b:1;}s:32:"Hook_config_ticket_mail_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_mail_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_mail_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ticket_mail_password";s:7:"comment";b:1;}s:30:"Hook_config_ticket_mail_server";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_mail_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_mail_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ticket_mail_server";s:7:"comment";b:1;}s:35:"Hook_config_ticket_mail_server_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/ticket_mail_server_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/ticket_mail_server_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_ticket_mail_server_port";s:7:"comment";b:1;}s:35:"Hook_config_ticket_mail_server_type";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/ticket_mail_server_type.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/ticket_mail_server_type.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_ticket_mail_server_type";s:7:"comment";b:1;}s:32:"Hook_config_ticket_mail_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_mail_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_mail_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ticket_mail_username";s:7:"comment";b:1;}s:32:"Hook_config_ticket_member_forums";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_member_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_member_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ticket_member_forums";s:7:"comment";b:1;}s:23:"Hook_config_ticket_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/ticket_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/ticket_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_ticket_text";s:7:"comment";b:1;}s:30:"Hook_config_ticket_type_forums";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_type_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_type_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ticket_type_forums";s:7:"comment";b:1;}s:21:"Hook_config_topic_pin";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_topic_pin";s:7:"comment";b:1;}s:30:"Hook_config_topic_pin_max_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/topic_pin_max_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/topic_pin_max_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_topic_pin_max_days";s:7:"comment";b:1;}s:34:"Hook_config_tornevall_api_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/tornevall_api_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/tornevall_api_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_tornevall_api_password";s:7:"comment";b:1;}s:34:"Hook_config_tornevall_api_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/tornevall_api_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/tornevall_api_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_tornevall_api_username";s:7:"comment";b:1;}s:30:"Hook_config_transcoding_server";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/transcoding_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/transcoding_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_transcoding_server";s:7:"comment";b:1;}s:40:"Hook_config_transcoding_zencoder_api_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/transcoding_zencoder_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/transcoding_zencoder_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_transcoding_zencoder_api_key";s:7:"comment";b:1;}s:41:"Hook_config_transcoding_zencoder_ftp_path";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/transcoding_zencoder_ftp_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/transcoding_zencoder_ftp_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_transcoding_zencoder_ftp_path";s:7:"comment";b:1;}s:22:"Hook_config_tree_lists";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/tree_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/tree_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_tree_lists";s:7:"comment";b:1;}s:21:"Hook_config_unzip_cmd";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/unzip_cmd.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/unzip_cmd.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_unzip_cmd";s:7:"comment";b:1;}s:21:"Hook_config_unzip_dir";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/unzip_dir.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/unzip_dir.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_unzip_dir";s:7:"comment";b:1;}s:32:"Hook_config_url_monikers_enabled";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/url_monikers_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/url_monikers_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_url_monikers_enabled";s:7:"comment";b:1;}s:22:"Hook_config_url_scheme";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/url_scheme.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/url_scheme.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_url_scheme";s:7:"comment";b:1;}s:34:"Hook_config_use_banner_permissions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/use_banner_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/use_banner_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_use_banner_permissions";s:7:"comment";b:1;}s:24:"Hook_config_use_captchas";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/use_captchas.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/use_captchas.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_use_captchas";s:7:"comment";b:1;}s:32:"Hook_config_use_contextual_dates";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/use_contextual_dates.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/use_contextual_dates.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_use_contextual_dates";s:7:"comment";b:1;}s:24:"Hook_config_use_joindate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/use_joindate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/use_joindate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_use_joindate";s:7:"comment";b:1;}s:26:"Hook_config_use_lastondate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/use_lastondate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/use_lastondate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_use_lastondate";s:7:"comment";b:1;}s:29:"Hook_config_use_local_payment";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/use_local_payment.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/use_local_payment.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_use_local_payment";s:7:"comment";b:1;}s:25:"Hook_config_use_true_from";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/use_true_from.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/use_true_from.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_use_true_from";s:7:"comment";b:1;}s:32:"Hook_config_user_postsize_errors";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/user_postsize_errors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/user_postsize_errors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_user_postsize_errors";s:7:"comment";b:1;}s:29:"Hook_config_username_click_im";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/username_click_im.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/username_click_im.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_username_click_im";s:7:"comment";b:1;}s:34:"Hook_config_username_profile_links";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/username_profile_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/username_profile_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_username_profile_links";s:7:"comment";b:1;}s:29:"Hook_config_users_online_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/users_online_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/users_online_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_users_online_time";s:7:"comment";b:1;}s:38:"Hook_config_usersonline_show_birthdays";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/usersonline_show_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/usersonline_show_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_usersonline_show_birthdays";s:7:"comment";b:1;}s:42:"Hook_config_usersonline_show_newest_member";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/usersonline_show_newest_member.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/usersonline_show_newest_member.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:42:"Hook_config_usersonline_show_newest_member";s:7:"comment";b:1;}s:24:"Hook_config_valid_audios";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_audios.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_audios.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_valid_audios";s:7:"comment";b:1;}s:31:"Hook_config_valid_email_domains";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/valid_email_domains.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/valid_email_domains.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_valid_email_domains";s:7:"comment";b:1;}s:24:"Hook_config_valid_images";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_valid_images";s:7:"comment";b:1;}s:23:"Hook_config_valid_types";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/valid_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/valid_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_valid_types";s:7:"comment";b:1;}s:24:"Hook_config_valid_videos";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_valid_videos";s:7:"comment";b:1;}s:25:"Hook_config_video_bitrate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/video_bitrate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/video_bitrate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_video_bitrate";s:7:"comment";b:1;}s:32:"Hook_config_video_height_setting";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/video_height_setting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/video_height_setting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_video_height_setting";s:7:"comment";b:1;}s:31:"Hook_config_video_width_setting";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/video_width_setting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/video_width_setting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_video_width_setting";s:7:"comment";b:1;}s:35:"Hook_config_vote_member_ip_restrict";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/vote_member_ip_restrict.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/vote_member_ip_restrict.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_vote_member_ip_restrict";s:7:"comment";b:1;}s:24:"Hook_config_vpn_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/vpn_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/vpn_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_vpn_password";s:7:"comment";b:1;}s:24:"Hook_config_vpn_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/vpn_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/vpn_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_vpn_username";s:7:"comment";b:1;}s:37:"Hook_config_web_notifications_enabled";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/web_notifications_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/web_notifications_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_web_notifications_enabled";s:7:"comment";b:1;}s:25:"Hook_config_website_email";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/website_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/website_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_website_email";s:7:"comment";b:1;}s:31:"Hook_config_webstandards_compat";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/webstandards_compat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/webstandards_compat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_webstandards_compat";s:7:"comment";b:1;}s:28:"Hook_config_webstandards_css";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/webstandards_css.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/webstandards_css.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_webstandards_css";s:7:"comment";b:1;}s:34:"Hook_config_webstandards_ext_files";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/webstandards_ext_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/webstandards_ext_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_webstandards_ext_files";s:7:"comment";b:1;}s:35:"Hook_config_webstandards_javascript";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/webstandards_javascript.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/webstandards_javascript.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_webstandards_javascript";s:7:"comment";b:1;}s:29:"Hook_config_webstandards_wcag";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/webstandards_wcag.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/webstandards_wcag.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_webstandards_wcag";s:7:"comment";b:1;}s:30:"Hook_config_webstandards_xhtml";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/webstandards_xhtml.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/webstandards_xhtml.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_webstandards_xhtml";s:7:"comment";b:1;}s:27:"Hook_config_welcome_message";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/welcome_message.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/welcome_message.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_welcome_message";s:7:"comment";b:1;}s:32:"Hook_config_wiki_enable_children";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/wiki_enable_children.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/wiki_enable_children.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_wiki_enable_children";s:7:"comment";b:1;}s:37:"Hook_config_wiki_enable_content_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/wiki_enable_content_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/wiki_enable_content_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_wiki_enable_content_posts";s:7:"comment";b:1;}s:39:"Hook_config_wiki_show_stats_count_pages";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/wiki_show_stats_count_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/wiki_show_stats_count_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_wiki_show_stats_count_pages";s:7:"comment";b:1;}s:39:"Hook_config_wiki_show_stats_count_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/wiki_show_stats_count_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/wiki_show_stats_count_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_wiki_show_stats_count_posts";s:7:"comment";b:1;}s:19:"Hook_config_wysiwyg";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/wysiwyg.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/wysiwyg.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:19:"Hook_config_wysiwyg";s:7:"comment";b:1;}s:18:"Hook_config_yeehaw";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:39:"sources/hooks/systems/config/yeehaw.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:39:"sources/hooks/systems/config/yeehaw.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:18:"Hook_config_yeehaw";s:7:"comment";b:1;}s:30:"Hook_content_meta_aware_author";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/author.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/author.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:30:"Hook_content_meta_aware_author";s:7:"comment";b:1;}s:30:"Hook_content_meta_aware_banner";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/banner.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/banner.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:30:"Hook_content_meta_aware_banner";s:7:"comment";b:1;}s:35:"Hook_content_meta_aware_banner_type";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:56:"sources/hooks/systems/content_meta_aware/banner_type.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/content_meta_aware/banner_type.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:35:"Hook_content_meta_aware_banner_type";s:7:"comment";b:1;}s:37:"Hook_content_meta_aware_calendar_type";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:58:"sources/hooks/systems/content_meta_aware/calendar_type.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/content_meta_aware/calendar_type.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:37:"Hook_content_meta_aware_calendar_type";s:7:"comment";b:1;}s:33:"Hook_content_meta_aware_catalogue";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/catalogue.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/catalogue.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:33:"Hook_content_meta_aware_catalogue";s:7:"comment";b:1;}s:42:"Hook_content_meta_aware_catalogue_category";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:63:"sources/hooks/systems/content_meta_aware/catalogue_category.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:63:"sources/hooks/systems/content_meta_aware/catalogue_category.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:42:"Hook_content_meta_aware_catalogue_category";s:7:"comment";b:1;}s:39:"Hook_content_meta_aware_catalogue_entry";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:60:"sources/hooks/systems/content_meta_aware/catalogue_entry.php";s:10:"parameters";a:2:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}i:1;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:47:"Catalogue name for entry (null: unknown / N/A).";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/content_meta_aware/catalogue_entry.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:39:"Hook_content_meta_aware_catalogue_entry";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_chat";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/chat.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/chat.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_chat";s:7:"comment";b:1;}s:36:"Hook_content_meta_aware_comcode_page";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:57:"sources/hooks/systems/content_meta_aware/comcode_page.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:57:"sources/hooks/systems/content_meta_aware/comcode_page.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:36:"Hook_content_meta_aware_comcode_page";s:7:"comment";b:1;}s:32:"Hook_content_meta_aware_download";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:53:"sources/hooks/systems/content_meta_aware/download.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/content_meta_aware/download.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:32:"Hook_content_meta_aware_download";s:7:"comment";b:1;}s:41:"Hook_content_meta_aware_download_category";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:62:"sources/hooks/systems/content_meta_aware/download_category.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:62:"sources/hooks/systems/content_meta_aware/download_category.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:41:"Hook_content_meta_aware_download_category";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_event";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/event.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/event.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_event";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_forum";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/forum.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/forum.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_forum";s:7:"comment";b:1;}s:31:"Hook_content_meta_aware_gallery";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:52:"sources/hooks/systems/content_meta_aware/gallery.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/content_meta_aware/gallery.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:31:"Hook_content_meta_aware_gallery";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_group";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/group.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/group.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_group";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_image";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/image.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/image.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_image";s:7:"comment";b:1;}s:30:"Hook_content_meta_aware_member";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/member.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/member.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:30:"Hook_content_meta_aware_member";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_news";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/news.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/news.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_news";s:7:"comment";b:1;}s:37:"Hook_content_meta_aware_news_category";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:58:"sources/hooks/systems/content_meta_aware/news_category.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/content_meta_aware/news_category.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:37:"Hook_content_meta_aware_news_category";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_poll";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/poll.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/poll.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_poll";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_post";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/post.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/post.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_post";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_quiz";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/quiz.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/quiz.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_quiz";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_topic";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/topic.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/topic.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_topic";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_video";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/video.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/video.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_video";s:7:"comment";b:1;}s:33:"Hook_content_meta_aware_wiki_page";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/wiki_page.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/wiki_page.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:33:"Hook_content_meta_aware_wiki_page";s:7:"comment";b:1;}s:33:"Hook_content_meta_aware_wiki_post";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/wiki_post.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/wiki_post.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:33:"Hook_content_meta_aware_wiki_post";s:7:"comment";b:1;}s:17:"Hook_cron_backups";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:38:"sources/hooks/systems/cron/backups.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_cron_backups";s:7:"comment";b:1;}s:23:"Hook_cron_block_caching";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:44:"sources/hooks/systems/cron/block_caching.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Hook_cron_block_caching";s:7:"comment";b:1;}s:18:"Hook_cron_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:39:"sources/hooks/systems/cron/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Hook_cron_calendar";s:7:"comment";b:1;}s:34:"Hook_cron_catalogue_entry_timeouts";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:55:"sources/hooks/systems/cron/catalogue_entry_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:34:"Hook_cron_catalogue_entry_timeouts";s:7:"comment";b:1;}s:32:"Hook_cron_catalogue_view_reports";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:53:"sources/hooks/systems/cron/catalogue_view_reports.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:32:"Hook_cron_catalogue_view_reports";s:7:"comment";b:1;}s:23:"Hook_cron_cns_birthdays";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:44:"sources/hooks/systems/cron/cns_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Hook_cron_cns_birthdays";s:7:"comment";b:1;}s:30:"Hook_cron_cns_confirm_reminder";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:51:"sources/hooks/systems/cron/cns_confirm_reminder.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Hook_cron_cns_confirm_reminder";s:7:"comment";b:1;}s:28:"Hook_cron_cns_welcome_emails";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:49:"sources/hooks/systems/cron/cns_welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Hook_cron_cns_welcome_emails";s:7:"comment";b:1;}s:25:"Hook_cron_content_reviews";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:46:"sources/hooks/systems/cron/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Hook_cron_content_reviews";s:7:"comment";b:1;}s:26:"Hook_cron_dynamic_firewall";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:47:"sources/hooks/systems/cron/dynamic_firewall.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:26:"Hook_cron_dynamic_firewall";s:7:"comment";b:1;}s:22:"Hook_cron_git_autopull";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:43:"sources/hooks/systems/cron/git_autopull.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:22:"Hook_cron_git_autopull";s:7:"comment";b:1;}s:31:"Hook_cron_group_member_timeouts";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:52:"sources/hooks/systems/cron/group_member_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:31:"Hook_cron_group_member_timeouts";s:7:"comment";b:1;}s:33:"Hook_cron_implicit_usergroup_sync";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:54:"sources/hooks/systems/cron/implicit_usergroup_sync.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:33:"Hook_cron_implicit_usergroup_sync";s:7:"comment";b:1;}s:28:"Hook_cron_ip_address_sharing";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:49:"sources/hooks/systems/cron/ip_address_sharing.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Hook_cron_ip_address_sharing";s:7:"comment";b:1;}s:22:"Hook_cron_leader_board";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:43:"sources/hooks/systems/cron/leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:22:"Hook_cron_leader_board";s:7:"comment";b:1;}s:20:"Hook_cron_mail_queue";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:41:"sources/hooks/systems/cron/mail_queue.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:20:"Hook_cron_mail_queue";s:7:"comment";b:1;}s:42:"Hook_cron_manual_subscription_notification";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:63:"sources/hooks/systems/cron/manual_subscription_notification.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:42:"Hook_cron_manual_subscription_notification";s:7:"comment";b:1;}s:30:"Hook_cron_newsletter_drip_send";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:51:"sources/hooks/systems/cron/newsletter_drip_send.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Hook_cron_newsletter_drip_send";s:7:"comment";b:1;}s:29:"Hook_cron_newsletter_periodic";a:3:{s:9:"functions";a:2:{s:3:"run";a:5:{s:8:"filename";s:50:"sources/hooks/systems/cron/newsletter_periodic.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}s:26:"newsletter_periodic_handle";a:6:{s:8:"filename";s:50:"sources/hooks/systems/cron/newsletter_periodic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"periodic_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"Details of periodic newsletter";s:11:"phpdoc_name";s:12:"periodic_row";}}s:4:"name";s:26:"newsletter_periodic_handle";s:11:"description";s:27:"Send a periodic newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:30:"Time was sent (null: not sent)";}}}s:4:"name";s:29:"Hook_cron_newsletter_periodic";s:7:"comment";b:1;}s:30:"Hook_cron_notification_digests";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:51:"sources/hooks/systems/cron/notification_digests.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Hook_cron_notification_digests";s:7:"comment";b:1;}s:16:"Hook_cron_oracle";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:37:"sources/hooks/systems/cron/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:16:"Hook_cron_oracle";s:7:"comment";b:1;}s:17:"Hook_cron_sitemap";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:38:"sources/hooks/systems/cron/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_cron_sitemap";s:7:"comment";b:1;}s:32:"Hook_cron_staff_checklist_notify";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:53:"sources/hooks/systems/cron/staff_checklist_notify.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:32:"Hook_cron_staff_checklist_notify";s:7:"comment";b:1;}s:21:"Hook_cron_stats_clean";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:42:"sources/hooks/systems/cron/stats_clean.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:21:"Hook_cron_stats_clean";s:7:"comment";b:1;}s:28:"Hook_cron_subscription_mails";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:49:"sources/hooks/systems/cron/subscription_mails.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Hook_cron_subscription_mails";s:7:"comment";b:1;}s:15:"Hook_cron_tasks";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:36:"sources/hooks/systems/cron/tasks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:15:"Hook_cron_tasks";s:7:"comment";b:1;}s:32:"Hook_cron_ticket_type_lead_times";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:53:"sources/hooks/systems/cron/ticket_type_lead_times.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:32:"Hook_cron_ticket_type_lead_times";s:7:"comment";b:1;}s:35:"Hook_cron_tickets_email_integration";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:56:"sources/hooks/systems/cron/tickets_email_integration.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:35:"Hook_cron_tickets_email_integration";s:7:"comment";b:1;}s:19:"Hook_cron_topic_pin";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:40:"sources/hooks/systems/cron/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Hook_cron_topic_pin";s:7:"comment";b:1;}s:26:"Hook_ecommerce_cart_orders";a:3:{s:9:"functions";a:4:{s:12:"get_products";a:6:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_orders.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}i:1;a:7:{s:4:"name";s:6:"search";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:"Product being searched for (null: none).";s:11:"phpdoc_name";s:6:"search";}i:2;a:7:{s:4:"name";s:17:"search_item_names";s:7:"default";s:13:"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 $search refers to the item name rather than the product codename.";s:11:"phpdoc_name";s:17:"search_item_names";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}s:10:"member_for";a:6:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_orders.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:10:"member_for";s:11:"description";s:53:"Find the corresponding member to a given purchase ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:53:"The member (null: unknown / can't perform operation).";}}s:25:"get_product_dispatch_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_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:10:"SHORT_TEXT";s:11:"description";s:8:"Item ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:25:"get_product_dispatch_type";s:11:"description";s:197:"Function to return dispatch type of product.(this hook represents a cart order, so find all of it's sub products's dispatch type and decide cart order product's dispatch type - automatic or manual)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Dispatch type.";}}s:17:"set_needed_fields";a:6:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_orders.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Item ID.";s:11:"phpdoc_name";s:9:"item_name";}}s:4:"name";s:17:"set_needed_fields";s:11:"description";s:55:"Function to return order ID from formatted of order ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Dispatch type.";}}}s:4:"name";s:26:"Hook_ecommerce_cart_orders";s:7:"comment";b:1;}s:30:"Hook_ecommerce_catalogue_items";a:3:{s:9:"functions";a:16:{s:12:"get_products";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}i:1;a:7:{s:4:"name";s:6:"search";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:"Product being searched for (null: none).";s:11:"phpdoc_name";s:6:"search";}i:2;a:7:{s:4:"name";s:17:"search_item_names";s:7:"default";s:13:"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 $search refers to the item name rather than the product codename.";s:11:"phpdoc_name";s:17:"search_item_names";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}s:12:"is_available";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:3:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;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:57:"The member we are checking against (null: current meber).";s:11:"phpdoc_name";s:6:"member";}i:2;a:7:{s:4:"name";s:12:"req_quantity";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:20:"The number required.";s:11:"phpdoc_name";s:12:"req_quantity";}}s:4:"name";s:12:"is_available";s:11:"description";s:75:"Check whether the product codename is available for purchase by the member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:55:"The availability code (a ECOMMERCE_PRODUCT_* constant).";}}s:22:"get_available_quantity";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.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:7:"ID_TEXT";s:11:"description";s:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:7:{s:4:"name";s:26:"consider_own_cart_contents";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether to consider the contents of your own cart.";s:11:"phpdoc_name";s:26:"consider_own_cart_contents";}}s:4:"name";s:22:"get_available_quantity";s:11:"description";s:53:"Get currently available quantity of selected product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:26:"Quantity (null: no limit).";}}s:11:"get_message";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.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:24:"The product in question.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:11:"get_message";s:11:"description";s:46:"Get the message for use in the purchase wizard";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The message.";}}s:19:"get_product_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"pid";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:"Product ID (null: read from environment, product_id).";s:11:"phpdoc_name";s:3:"pid";}}s:4:"name";s:19:"get_product_details";s:11:"description";s:26:"Get the product's details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}s:11:"add_to_cart";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"product_det";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Array of product details.";s:11:"phpdoc_name";s:11:"product_det";}}s:4:"name";s:11:"add_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:9:"AUTO_LINK";s:11:"description";s:30:"Order ID of newly added order.";}}s:18:"add_purchase_order";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"product";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"Product ID.";s:11:"phpdoc_name";s:7:"product";}i:1;a:5:{s:4:"name";s:11:"product_det";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Product details.";s:11:"phpdoc_name";s:11:"product_det";}}s:4:"name";s:18:"add_purchase_order";s:11:"description";s:48:"Add order - (order coming from purchase module).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:9:"Order ID.";}}s:15:"show_cart_entry";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"shopping_cart";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Tempcode object of shopping cart result table.";s:11:"phpdoc_name";s:13:"shopping_cart";}i:1;a:5:{s:4:"name";s:5:"entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:42:"Details of new entry to the shopping cart.";s:11:"phpdoc_name";s:5:"entry";}}s:4:"name";s:15:"show_cart_entry";s:11:"description";s:27:"Show shopping cart entries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Tempcode object of shopping cart result table.";}}s:13:"calculate_tax";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"gross_cost";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:22:"Gross cost of product.";s:11:"phpdoc_name";s:10:"gross_cost";}i:1;a:5:{s:4:"name";s:14:"tax_percentage";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Tax in percentage.";s:11:"phpdoc_name";s:14:"tax_percentage";}}s:4:"name";s:13:"calculate_tax";s:11:"description";s:35:"Calculate tax of catalogue product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:31:"Calculated tax for the product.";}}s:23:"calculate_shipping_cost";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"item_weight";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Weight of product.";s:11:"phpdoc_name";s:11:"item_weight";}}s:4:"name";s:23:"calculate_shipping_cost";s:11:"description";s:35:"Calculate shipping cost of product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:41:"Calculated shipping cost for the product.";}}s:23:"calculate_product_price";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"item_price";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Weight of product.";s:11:"phpdoc_name";s:10:"item_price";}i:1;a:5:{s:4:"name";s:3:"tax";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Tax in percentage.";s:11:"phpdoc_name";s:3:"tax";}i:2;a:5:{s:4:"name";s:11:"item_weight";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Weight of item.";s:11:"phpdoc_name";s:11:"item_weight";}}s:4:"name";s:23:"calculate_product_price";s:11:"description";s:24:"Calculate product price.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:41:"Calculated shipping cost for the product.";}}s:17:"get_product_image";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{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:15:"Catalogue name.";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"Catalogue entry ID.";s:11:"phpdoc_name";s:8:"entry_id";}}s:4:"name";s:17:"get_product_image";s:11:"description";s:52:"Find product image for a specific catalogue product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:28:"Image name (null: no image).";}}s:12:"update_stock";a:5:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"Catalogue entry ID.";s:11:"phpdoc_name";s:8:"entry_id";}i:1;a:5:{s:4:"name";s:8:"quantity";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Quantity to deduct.";s:11:"phpdoc_name";s:8:"quantity";}}s:4:"name";s:12:"update_stock";s:11:"description";s:37:"Update stock levels after a purchase.";s:5:"flags";a:0:{}}s:25:"get_product_dispatch_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_product_dispatch_type";s:11:"description";s:44:"Function to return dispatch type of product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"Dispatch type (manual/automatic).";}}s:12:"product_info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.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:11:"Product ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:12:"product_info";s:11:"description";s:28:"Return product info details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:20:"Product information.";}}s:29:"get_custom_product_map_fields";a:5:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.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:17:"Product entry ID.";s:11:"phpdoc_name";s:2:"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:37:"Map where product details are placed.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:29:"get_custom_product_map_fields";s:11:"description";s:40:"Get custom fields for ecommerce product.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Hook_ecommerce_catalogue_items";s:7:"comment";b:1;}s:23:"Hook_ecommerce_interest";a:3:{s:9:"functions";a:2:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/ecommerce/interest.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:12:"get_products";a:6:{s:8:"filename";s:44:"sources/hooks/systems/ecommerce/interest.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:23:"Hook_ecommerce_interest";s:7:"comment";b:1;}s:20:"Hook_ecommerce_other";a:3:{s:9:"functions";a:2:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/ecommerce/other.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:12:"get_products";a:6:{s:8:"filename";s:41:"sources/hooks/systems/ecommerce/other.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:20:"Hook_ecommerce_other";s:7:"comment";b:1;}s:18:"Hook_ecommerce_tax";a:3:{s:9:"functions";a:2:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/ecommerce/tax.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:12:"get_products";a:6:{s:8:"filename";s:39:"sources/hooks/systems/ecommerce/tax.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:18:"Hook_ecommerce_tax";s:7:"comment";b:1;}s:24:"Hook_ecommerce_usergroup";a:3:{s:9:"functions";a:6:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:10:"member_for";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:10:"member_for";s:11:"description";s:53:"Find the corresponding member to a given purchase ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:53:"The member (null: unknown / can't perform operation).";}}s:12:"get_products";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}s:11:"get_message";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.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:24:"The product in question.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:11:"get_message";s:11:"description";s:47:"Get the message for use in the purchase wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The message.";}}s:17:"get_needed_fields";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_needed_fields";s:11:"description";s:60:"Get fields that need to be filled in in the purchase wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:41:"The fields and message text (null: none).";}}s:12:"is_available";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.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:7:"ID_TEXT";s:11:"description";s:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:11:"The member.";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:12:"is_available";s:11:"description";s:75:"Check whether the product codename is available for purchase by the member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:55:"The availability code (a ECOMMERCE_PRODUCT_* constant).";}}}s:4:"name";s:24:"Hook_ecommerce_usergroup";s:7:"comment";b:1;}s:19:"Hook_ecommerce_wage";a:3:{s:9:"functions";a:2:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/wage.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:12:"get_products";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/wage.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:19:"Hook_ecommerce_wage";s:7:"comment";b:1;}s:19:"Hook_ecommerce_work";a:3:{s:9:"functions";a:3:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/work.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:10:"member_for";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/work.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:10:"member_for";s:11:"description";s:53:"Find the corresponding member to a given purchase ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:53:"The member (null: unknown / can't perform operation).";}}s:12:"get_products";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/work.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:19:"Hook_ecommerce_work";s:7:"comment";b:1;}s:11:"Hook_ccbill";a:3:{s:9:"functions";a:9:{s:14:"get_account_id";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_account_id";s:11:"description";s:25:"Get the CCBill account ID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The answer.";}}s:17:"generate_trans_id";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"generate_trans_id";s:11:"description";s:26:"Generate a transaction ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"A transaction ID.";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:5:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:7:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:11:"auto_cancel";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"subscription_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"ID of the subscription to cancel.";s:11:"phpdoc_name";s:15:"subscription_id";}}s:4:"name";s:11:"auto_cancel";s:11:"description";s:84:"Find whether the hook auto-cancels (if it does, auto cancel the given subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:65:"True: yes. False: no. (null: cancels via a user-URL-directioning)";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:7:"The fee";}}s:18:"handle_transaction";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"handle_transaction";s:11:"description";s:140:"Handle IPN's. The function may produce output, which would be returned to the Payment Gateway. The function may do transaction verification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:117:"A long tuple of collected data (null: no transaction; will only return null when not running the 'ecommerce' script).";}}s:22:"store_shipping_address";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.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:9:"Order ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:22:"store_shipping_address";s:11:"description";s:34:"Store shipping address for orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"Address ID (null: No address record found).";}}}s:4:"name";s:11:"Hook_ccbill";s:7:"comment";b:1;}s:11:"Hook_paypal";a:3:{s:9:"functions";a:11:{s:20:"_get_payment_address";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_get_payment_address";s:11:"description";s:31:"Get the PayPal payment address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The answer.";}}s:20:"_get_remote_form_url";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_get_remote_form_url";s:11:"description";s:24:"Get the remote form URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The remote form URL.";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:5:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:7:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:11:"auto_cancel";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"subscription_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"ID of the subscription to cancel.";s:11:"phpdoc_name";s:15:"subscription_id";}}s:4:"name";s:11:"auto_cancel";s:11:"description";s:84:"Find whether the hook auto-cancels (if it does, auto cancel the given subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:65:"True: yes. False: no. (null: cancels via a user-URL-directioning)";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:7:"The fee";}}s:18:"handle_transaction";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"handle_transaction";s:11:"description";s:140:"Handle IPN's. The function may produce output, which would be returned to the Payment Gateway. The function may do transaction verification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:117:"A long tuple of collected data (null: no transaction; will only return null when not running the 'ecommerce' script).";}}s:28:"make_cart_transaction_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"items";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Items array.";s:11:"phpdoc_name";s:5:"items";}i:1;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Currency symbol.";s:11:"phpdoc_name";s:8:"currency";}i:2;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:9:"Order ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:28:"make_cart_transaction_button";s:11:"description";s:136:"Make a transaction (payment) button for multiple shopping cart items.Optional method, provides more detail than make_transaction_button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:22:"store_shipping_address";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.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:9:"Order ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:22:"store_shipping_address";s:11:"description";s:34:"Store shipping address for orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"Address ID (null: No address record found).";}}s:24:"get_callback_url_message";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_callback_url_message";s:11:"description";s:44:"Get the status message after a URL callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:21:"Message (null: none).";}}}s:4:"name";s:11:"Hook_paypal";s:7:"comment";b:1;}s:11:"Hook_secpay";a:3:{s:9:"functions";a:13:{s:13:"_get_username";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_get_username";s:11:"description";s:25:"Get the gateway username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The answer.";}}s:20:"_get_remote_form_url";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_get_remote_form_url";s:11:"description";s:24:"Get the remote form URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The remote form URL.";}}s:17:"generate_trans_id";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"generate_trans_id";s:11:"description";s:26:"Generate a transaction ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"A transaction ID.";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:5:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:31:"_translate_subscription_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:2:{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:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:1;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}}s:4:"name";s:31:"_translate_subscription_details";s:11:"description";s:49:"Find details for a subscription in secpay format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A tuple: the period in secpay units, the date of the first repeat.";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:7:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:11:"auto_cancel";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"subscription_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"ID of the subscription to cancel.";s:11:"phpdoc_name";s:15:"subscription_id";}}s:4:"name";s:11:"auto_cancel";s:11:"description";s:84:"Find whether the hook auto-cancels (if it does, auto cancel the given subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:65:"True: yes. False: no. (null: cancels via a user-URL-directioning)";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:8:"The fee.";}}s:32:"create_selection_list_card_types";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.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:7:"?string";s:11:"description";s:54:"The card type to select by default (null: don't care).";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:32:"create_selection_list_card_types";s:11:"description";s:25:"Get a list of card types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The list.";}}s:14:"do_transaction";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:8:"trans_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:40:"The transaction ID (null: generate one).";s:11:"phpdoc_name";s:8:"trans_id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"Cardholder name.";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:11:"card_number";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"Card number.";s:11:"phpdoc_name";s:11:"card_number";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"Transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The currency";s:11:"phpdoc_name";s:8:"currency";}i:5;a:5:{s:4:"name";s:11:"expiry_date";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"Card Expiry date.";s:11:"phpdoc_name";s:11:"expiry_date";}i:6;a:5:{s:4:"name";s:12:"issue_number";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Card Issue number.";s:11:"phpdoc_name";s:12:"issue_number";}i:7;a:5:{s:4:"name";s:10:"start_date";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"Card Start date.";s:11:"phpdoc_name";s:10:"start_date";}i:8;a:6:{s:4:"name";s:9:"card_type";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:10:"Card Type.";s:11:"phpdoc_name";s:9:"card_type";s:3:"set";s:106:""Visa" "Master Card" "Switch" "UK Maestro" "Maestro" "Solo" "Delta" "American Express" "Diners Card" "JCB"";}i:9;a:5:{s:4:"name";s:3:"cv2";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:34:"Card CV2 number (security number).";s:11:"phpdoc_name";s:3:"cv2";}i:10;a:7:{s:4:"name";s:6:"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:64:"The subscription length in the units. (null: not a subscription)";s:11:"phpdoc_name";s:6:"length";}i:11;a:8:{s:4:"name";s:12:"length_units";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:44:"The length units. (null: not a subscription)";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}}s:4:"name";s:14:"do_transaction";s:11:"description";s:22:"Perform a transaction.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:86:"A tuple: success (boolean), trans-ID (string), message (string), raw message (string).";}}s:18:"handle_transaction";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"handle_transaction";s:11:"description";s:140:"Handle IPN's. The function may produce output, which would be returned to the Payment Gateway. The function may do transaction verification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:117:"A long tuple of collected data (null: no transaction; will only return null when not running the 'ecommerce' script).";}}s:22:"store_shipping_address";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.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:9:"Order ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:22:"store_shipping_address";s:11:"description";s:34:"Store shipping address for orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"Address ID (null: No address record found).";}}}s:4:"name";s:11:"Hook_secpay";s:7:"comment";b:1;}s:13:"Hook_worldpay";a:3:{s:9:"functions";a:12:{s:13:"_get_username";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_get_username";s:11:"description";s:25:"Get the gateway username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The answer.";}}s:20:"_get_remote_form_url";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_get_remote_form_url";s:11:"description";s:24:"Get the remote form URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The remote form URL.";}}s:9:"get_logos";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"get_logos";s:11:"description";s:62:"Get the card/gateway logos and other gateway-required details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The stuff.";}}s:17:"generate_trans_id";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"generate_trans_id";s:11:"description";s:26:"Generate a transaction ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"A transaction ID.";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:5:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:7:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:11:"auto_cancel";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"subscription_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"ID of the subscription to cancel.";s:11:"phpdoc_name";s:15:"subscription_id";}}s:4:"name";s:11:"auto_cancel";s:11:"description";s:84:"Find whether the hook auto-cancels (if it does, auto cancel the given subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:65:"True: yes. False: no. (null: cancels via a user-URL-directioning)";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:8:"The fee.";}}s:18:"handle_transaction";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"handle_transaction";s:11:"description";s:140:"Handle IPN's. The function may produce output, which would be returned to the Payment Gateway. The function may do transaction verification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:117:"A long tuple of collected data (null: no transaction; will only return null when not running the 'ecommerce' script).";}}s:21:"show_payment_response";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"product";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Product.";s:11:"phpdoc_name";s:7:"product";}i:1;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:21:"show_payment_response";s:11:"description";s:85:"Show a payment response after IPN runs (for hooks that handle redirects in this way).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The response.";}}s:22:"store_shipping_address";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.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:22:"store_shipping_address";s:11:"description";s:34:"Store shipping address for orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"Address ID (null: No address record found).";}}}s:4:"name";s:13:"Hook_worldpay";s:7:"comment";b:1;}s:18:"Hook_fields_author";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:18:"Hook_fields_author";s:7:"comment";b:1;}s:20:"Hook_fields_codename";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:16:"get_field_random";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"field_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The field ID";s:11:"phpdoc_name";s:8:"field_id";}i:1;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:6:"string";s:11:"description";s:17:"The field default";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:16:"get_field_random";s:11:"description";s:44:"Get a fresh value for a random valued field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:20:"Hook_fields_codename";s:7:"comment";b:1;}s:17:"Hook_fields_color";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:17:"Hook_fields_color";s:7:"comment";b:1;}s:24:"Hook_fields_content_link";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:24:"Hook_fields_content_link";s:7:"comment";b:1;}s:30:"Hook_fields_content_link_multi";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:30:"Hook_fields_content_link_multi";s:7:"comment";b:1;}s:16:"Hook_fields_date";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:26:"get_search_filter_from_env";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:26:"get_search_filter_from_env";s:11:"description";s:48:"Get a search filter string from the environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Filter";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:16:"Hook_fields_date";s:7:"comment";b:1;}s:17:"Hook_fields_email";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:17:"Hook_fields_email";s:7:"comment";b:1;}s:17:"Hook_fields_float";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:17:"Hook_fields_float";s:7:"comment";b:1;}s:16:"Hook_fields_guid";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:14:"get_field_guid";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_field_guid";s:11:"description";s:10:"Get a GUID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"The GUID";}}}s:4:"name";s:16:"Hook_fields_guid";s:7:"comment";b:1;}s:19:"Hook_fields_integer";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:24:"get_field_auto_increment";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"field_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The field ID";s:11:"phpdoc_name";s:8:"field_id";}i:1;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:6:"string";s:11:"description";s:17:"The field default";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_auto_increment";s:11:"description";s:53:"Get a fresh value for an auto_increment valued field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:19:"Hook_fields_integer";s:7:"comment";b:1;}s:16:"Hook_fields_isbn";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:16:"Hook_fields_isbn";s:7:"comment";b:1;}s:21:"Hook_fields_just_date";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:26:"get_search_filter_from_env";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:26:"get_search_filter_from_env";s:11:"description";s:48:"Get a search filter string from the environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Filter";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_just_date";s:7:"comment";b:1;}s:21:"Hook_fields_just_time";a:3:{s:9:"functions";a:8:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:26:"get_search_filter_from_env";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:26:"get_search_filter_from_env";s:11:"description";s:48:"Get a search filter string from the environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Filter";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:10:"input_from";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"stub";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"Name of environment variable";s:11:"phpdoc_name";s:4:"stub";}i:1;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:43:"Use GET parameter instead of POST parameter";s:11:"phpdoc_name";s:3:"get";}}s:4:"name";s:10:"input_from";s:11:"description";s:13:"Input a value";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"String representation";}}}s:4:"name";s:21:"Hook_fields_just_time";s:7:"comment";b:1;}s:16:"Hook_fields_list";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_input_list_map";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:15:"dynamic_choices";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:110:"Whether to put custom choices from previous data back into the main list (null: decide based on field options)";s:11:"phpdoc_name";s:15:"dynamic_choices";}}s:4:"name";s:18:"get_input_list_map";s:11:"description";s:15:"Get field list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:4:"List";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:16:"Hook_fields_list";s:7:"comment";b:1;}s:22:"Hook_fields_list_multi";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_input_list_map";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:15:"dynamic_choices";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:110:"Whether to put custom choices from previous data back into the main list (null: decide based on field options)";s:11:"phpdoc_name";s:15:"dynamic_choices";}}s:4:"name";s:18:"get_input_list_map";s:11:"description";s:15:"Get field list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:4:"List";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:22:"Hook_fields_list_multi";s:7:"comment";b:1;}s:21:"Hook_fields_long_text";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_long_text";s:7:"comment";b:1;}s:22:"Hook_fields_long_trans";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}i:5;a:7:{s:4:"name";s:4:"last";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether this is the last field in the catalogue";s:11:"phpdoc_name";s:4:"last";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:22:"Hook_fields_long_trans";s:7:"comment";b:1;}s:18:"Hook_fields_member";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:18:"Hook_fields_member";s:7:"comment";b:1;}s:24:"Hook_fields_member_multi";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:24:"Hook_fields_member_multi";s:7:"comment";b:1;}s:21:"Hook_fields_page_link";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_page_link";s:7:"comment";b:1;}s:20:"Hook_fields_password";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:20:"Hook_fields_password";s:7:"comment";b:1;}s:19:"Hook_fields_picture";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Hook_fields_picture";s:7:"comment";b:1;}s:25:"Hook_fields_picture_multi";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Hook_fields_picture_multi";s:7:"comment";b:1;}s:25:"Hook_fields_posting_field";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}i:5;a:7:{s:4:"name";s:4:"last";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether this is the last field in the catalogue";s:11:"phpdoc_name";s:4:"last";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:25:"Hook_fields_posting_field";s:7:"comment";b:1;}s:21:"Hook_fields_reference";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"filter";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:69:"Only find if we can potential match this field type (null: no filter)";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_reference";s:7:"comment";b:1;}s:27:"Hook_fields_reference_multi";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"filter";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:69:"Only find if we can potential match this field type (null: no filter)";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:27:"Hook_fields_reference_multi";s:7:"comment";b:1;}s:22:"Hook_fields_short_text";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:22:"Hook_fields_short_text";s:7:"comment";b:1;}s:28:"Hook_fields_short_text_multi";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:28:"Hook_fields_short_text_multi";s:7:"comment";b:1;}s:23:"Hook_fields_short_trans";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:23:"Hook_fields_short_trans";s:7:"comment";b:1;}s:29:"Hook_fields_short_trans_multi";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:29:"Hook_fields_short_trans_multi";s:7:"comment";b:1;}s:23:"Hook_fields_theme_image";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:23:"Hook_fields_theme_image";s:7:"comment";b:1;}s:16:"Hook_fields_tick";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:16:"Hook_fields_tick";s:7:"comment";b:1;}s:18:"Hook_fields_upload";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Hook_fields_upload";s:7:"comment";b:1;}s:24:"Hook_fields_upload_multi";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:24:"Hook_fields_upload_multi";s:7:"comment";b:1;}s:15:"Hook_fields_url";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:15:"Hook_fields_url";s:7:"comment";b:1;}s:21:"Hook_fields_url_multi";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_url_multi";s:7:"comment";b:1;}s:17:"Hook_fields_video";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}i:9;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:32:"Submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_fields_video";s:7:"comment";b:1;}s:23:"Hook_fields_video_multi";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}i:9;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:32:"Submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Hook_fields_video_multi";s:7:"comment";b:1;}s:28:"Hook_login_provider_httpauth";a:3:{s:9:"functions";a:1:{s:9:"try_login";a:6:{s:8:"filename";s:50:"sources/hooks/systems/login_providers/httpauth.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:7:"?MEMBER";s:11:"description";s:72:"Member ID already detected as logged in (null: none). May be a guest ID.";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"try_login";s:11:"description";s:29:"Standard login provider hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:68:"Member ID now detected as logged in (null: none). May be a guest ID.";}}}s:4:"name";s:28:"Hook_login_provider_httpauth";s:7:"comment";b:1;}s:34:"Hook_media_rendering_audio_general";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_audio_general";s:7:"comment";b:1;}s:36:"Hook_media_rendering_audio_microsoft";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:36:"Hook_media_rendering_audio_microsoft";s:7:"comment";b:1;}s:34:"Hook_media_rendering_audio_websafe";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_audio_websafe";s:7:"comment";b:1;}s:25:"Hook_media_rendering_code";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:25:"Hook_media_rendering_code";s:7:"comment";b:1;}s:26:"Hook_media_rendering_email";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:26:"Hook_media_rendering_email";s:7:"comment";b:1;}s:26:"Hook_media_rendering_flash";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:26:"Hook_media_rendering_flash";s:7:"comment";b:1;}s:30:"Hook_media_rendering_hyperlink";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:30:"Hook_media_rendering_hyperlink";s:7:"comment";b:1;}s:34:"Hook_media_rendering_image_websafe";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:7:{s:4:"name";s:21:"url_direct_filesystem";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:61:"Direct URL (not via a script) (null: just use the normal URL)";s:11:"phpdoc_name";s:21:"url_direct_filesystem";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_image_websafe";s:7:"comment";b:1;}s:27:"Hook_media_rendering_oembed";a:3:{s:9:"functions";a:9:{s:14:"get_type_label";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}i:1;a:7:{s:4:"name";s:12:"meta_details";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 media signature, so we can go on this on top of the mime-type (null: not known)";s:11:"phpdoc_name";s:12:"meta_details";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:19:"get_video_thumbnail";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Video URL";s:11:"phpdoc_name";s:7:"src_url";}}s:4:"name";s:19:"get_video_thumbnail";s:11:"description";s:49:"If we can handle this URL, get the thumbnail URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The thumbnail URL (null: no match).";}}s:22:"get_oembed_data_result";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:2:{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:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"Attributes (e.g. width, height)";s:11:"phpdoc_name";s:10:"attributes";}}s:4:"name";s:22:"get_oembed_data_result";s:11:"description";s:20:"Do an oEmbed lookup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:49:"Fully parsed/validated oEmbed result (null: fail)";}}s:6:"render";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}s:16:"_fallback_render";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:3;a:7:{s:4:"name";s:19:"link_captions_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:26:"Text to show the link with";s:11:"phpdoc_name";s:19:"link_captions_title";}}s:4:"name";s:16:"_fallback_render";s:11:"description";s:79:"Provide code to display what is at the URL, when we fail to render with oEmbed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}s:21:"_find_oembed_endpoint";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:1:{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:35:"URL to find the oEmbed endpoint for";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:21:"_find_oembed_endpoint";s:11:"description";s:34:"Find an oEmbed endpoint for a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:30:"Endpoint UR (null: none found)";}}}s:4:"name";s:27:"Hook_media_rendering_oembed";s:7:"comment";b:1;}s:24:"Hook_media_rendering_pdf";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:24:"Hook_media_rendering_pdf";s:7:"comment";b:1;}s:30:"Hook_media_rendering_quicktime";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:30:"Hook_media_rendering_quicktime";s:7:"comment";b:1;}s:30:"Hook_media_rendering_realaudio";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:30:"Hook_media_rendering_realaudio";s:7:"comment";b:1;}s:30:"Hook_media_rendering_realmedia";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:30:"Hook_media_rendering_realmedia";s:7:"comment";b:1;}s:24:"Hook_media_rendering_svg";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:24:"Hook_media_rendering_svg";s:7:"comment";b:1;}s:35:"Hook_media_rendering_video_facebook";a:3:{s:9:"functions";a:6:{s:14:"get_type_label";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:19:"get_video_thumbnail";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Video URL";s:11:"phpdoc_name";s:7:"src_url";}}s:4:"name";s:19:"get_video_thumbnail";s:11:"description";s:49:"If we can handle this URL, get the thumbnail URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The thumbnail URL (null: no match).";}}s:6:"render";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:35:"Hook_media_rendering_video_facebook";s:7:"comment";b:1;}s:34:"Hook_media_rendering_video_general";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_video_general";s:7:"comment";b:1;}s:36:"Hook_media_rendering_video_microsoft";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:36:"Hook_media_rendering_video_microsoft";s:7:"comment";b:1;}s:34:"Hook_media_rendering_video_websafe";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_video_websafe";s:7:"comment";b:1;}s:26:"Hook_media_rendering_vimeo";a:3:{s:9:"functions";a:6:{s:14:"get_type_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:19:"get_video_thumbnail";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Video URL";s:11:"phpdoc_name";s:7:"src_url";}}s:4:"name";s:19:"get_video_thumbnail";s:11:"description";s:49:"If we can handle this URL, get the thumbnail URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The thumbnail URL (null: no match).";}}s:6:"render";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:26:"Hook_media_rendering_vimeo";s:7:"comment";b:1;}s:28:"Hook_media_rendering_youtube";a:3:{s:9:"functions";a:6:{s:14:"get_type_label";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:19:"get_video_thumbnail";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Video URL";s:11:"phpdoc_name";s:7:"src_url";}}s:4:"name";s:19:"get_video_thumbnail";s:11:"description";s:49:"If we can handle this URL, get the thumbnail URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The thumbnail URL (null: no match).";}}s:6:"render";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:28:"Hook_media_rendering_youtube";s:7:"comment";b:1;}s:27:"Hook_notification_actionlog";a:3:{s:9:"functions";a:4:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/actionlog.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/actionlog.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/actionlog.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:27:"Hook_notification_actionlog";s:7:"comment";b:1;}s:46:"Hook_notification_adminzone_dashboard_accessed";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/adminzone_dashboard_accessed.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/adminzone_dashboard_accessed.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:46:"Hook_notification_adminzone_dashboard_accessed";s:7:"comment";b:1;}s:26:"Hook_notification_auto_ban";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/auto_ban.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/auto_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:26:"Hook_notification_auto_ban";s:7:"comment";b:1;}s:32:"Hook_notification_calendar_event";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:32:"Hook_notification_calendar_event";s:7:"comment";b:1;}s:35:"Hook_notification_calendar_reminder";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/calendar_reminder.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/calendar_reminder.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:35:"Hook_notification_calendar_reminder";s:7:"comment";b:1;}s:33:"Hook_notification_catalogue_entry";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:33:"Hook_notification_catalogue_entry";s:7:"comment";b:1;}s:40:"Hook_notification_catalogue_view_reports";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/catalogue_view_reports.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/catalogue_view_reports.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:40:"Hook_notification_catalogue_view_reports";s:7:"comment";b:1;}s:32:"Hook_notification_checklist_task";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/checklist_task.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/checklist_task.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_checklist_task";s:7:"comment";b:1;}s:30:"Hook_notification_cns_birthday";a:3:{s:9:"functions";a:3:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/cns_birthday.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/cns_birthday.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/cns_birthday.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:30:"Hook_notification_cns_birthday";s:7:"comment";b:1;}s:35:"Hook_notification_cns_choose_avatar";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/cns_choose_avatar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/cns_choose_avatar.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:35:"Hook_notification_cns_choose_avatar";s:7:"comment";b:1;}s:34:"Hook_notification_cns_choose_photo";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_choose_photo.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_choose_photo.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:34:"Hook_notification_cns_choose_photo";s:7:"comment";b:1;}s:38:"Hook_notification_cns_choose_signature";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/cns_choose_signature.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/cns_choose_signature.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:38:"Hook_notification_cns_choose_signature";s:7:"comment";b:1;}s:26:"Hook_notification_cns_club";a:3:{s:9:"functions";a:3:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/cns_club.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/cns_club.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/cns_club.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:26:"Hook_notification_cns_club";s:7:"comment";b:1;}s:37:"Hook_notification_cns_friend_birthday";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:59:"sources/hooks/systems/notifications/cns_friend_birthday.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:59:"sources/hooks/systems/notifications/cns_friend_birthday.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:37:"Hook_notification_cns_friend_birthday";s:7:"comment";b:1;}s:36:"Hook_notification_cns_group_declined";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/cns_group_declined.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/cns_group_declined.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:36:"Hook_notification_cns_group_declined";s:7:"comment";b:1;}s:40:"Hook_notification_cns_group_join_request";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/cns_group_join_request.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/cns_group_join_request.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:40:"Hook_notification_cns_group_join_request";s:7:"comment";b:1;}s:46:"Hook_notification_cns_group_join_request_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/cns_group_join_request_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/cns_group_join_request_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:46:"Hook_notification_cns_group_join_request_staff";s:7:"comment";b:1;}s:41:"Hook_notification_cns_member_joined_group";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:41:"Hook_notification_cns_member_joined_group";s:7:"comment";b:1;}s:45:"Hook_notification_cns_member_needs_validation";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:67:"sources/hooks/systems/notifications/cns_member_needs_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:45:"Hook_notification_cns_member_needs_validation";s:7:"comment";b:1;}s:32:"Hook_notification_cns_new_member";a:3:{s:9:"functions";a:3:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/cns_new_member.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/cns_new_member.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/cns_new_member.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:32:"Hook_notification_cns_new_member";s:7:"comment";b:1;}s:28:"Hook_notification_cns_new_pt";a:3:{s:9:"functions";a:3:{s:16:"allowed_settings";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/cns_new_pt.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/cns_new_pt.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/cns_new_pt.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:28:"Hook_notification_cns_new_pt";s:7:"comment";b:1;}s:38:"Hook_notification_cns_password_changed";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/cns_password_changed.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:38:"Hook_notification_cns_password_changed";s:7:"comment";b:1;}s:35:"Hook_notification_cns_rank_promoted";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/cns_rank_promoted.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:35:"Hook_notification_cns_rank_promoted";s:7:"comment";b:1;}s:27:"Hook_notification_cns_topic";a:3:{s:9:"functions";a:8:{s:19:"supports_categories";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:16:"allowed_settings";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:24:"get_default_auto_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:24:"get_default_auto_setting";s:11:"description";s:147:"Find the setting that members have for a notification code if they have done some action triggering automatic setting (e.g. posted within a topic).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Automatic setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:10:"_is_member";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:10:"_is_member";s:11:"description";s:101:"Find whether someone has permisson to view any notifications (yes) and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:27:"Hook_notification_cns_topic";s:7:"comment";b:1;}s:34:"Hook_notification_cns_topic_invite";a:3:{s:9:"functions";a:3:{s:16:"allowed_settings";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_topic_invite.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_topic_invite.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_topic_invite.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:34:"Hook_notification_cns_topic_invite";s:7:"comment";b:1;}s:38:"Hook_notification_cns_username_changed";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/cns_username_changed.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:38:"Hook_notification_cns_username_changed";s:7:"comment";b:1;}s:44:"Hook_notification_cns_username_changed_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:66:"sources/hooks/systems/notifications/cns_username_changed_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:66:"sources/hooks/systems/notifications/cns_username_changed_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:44:"Hook_notification_cns_username_changed_staff";s:7:"comment";b:1;}s:32:"Hook_notification_comment_posted";a:3:{s:9:"functions";a:6:{s:19:"supports_categories";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:24:"get_default_auto_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:24:"get_default_auto_setting";s:11:"description";s:147:"Find the setting that members have for a notification code if they have done some action triggering automatic setting (e.g. posted within a topic).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Automatic setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:32:"Hook_notification_comment_posted";s:7:"comment";b:1;}s:33:"Hook_notification_content_reviews";a:3:{s:9:"functions";a:4:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/content_reviews.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/content_reviews.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/content_reviews.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:33:"Hook_notification_content_reviews";s:7:"comment";b:1;}s:35:"Hook_notification_content_validated";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/content_validated.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:35:"Hook_notification_content_validated";s:7:"comment";b:1;}s:26:"Hook_notification_download";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:26:"Hook_notification_download";s:7:"comment";b:1;}s:32:"Hook_notification_error_occurred";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/error_occurred.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/error_occurred.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_error_occurred";s:7:"comment";b:1;}s:37:"Hook_notification_error_occurred_cron";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:59:"sources/hooks/systems/notifications/error_occurred_cron.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:59:"sources/hooks/systems/notifications/error_occurred_cron.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:37:"Hook_notification_error_occurred_cron";s:7:"comment";b:1;}s:45:"Hook_notification_error_occurred_missing_page";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:67:"sources/hooks/systems/notifications/error_occurred_missing_page.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:67:"sources/hooks/systems/notifications/error_occurred_missing_page.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:45:"Hook_notification_error_occurred_missing_page";s:7:"comment";b:1;}s:50:"Hook_notification_error_occurred_missing_reference";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:72:"sources/hooks/systems/notifications/error_occurred_missing_reference.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:72:"sources/hooks/systems/notifications/error_occurred_missing_reference.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:50:"Hook_notification_error_occurred_missing_reference";s:7:"comment";b:1;}s:60:"Hook_notification_error_occurred_missing_reference_important";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:82:"sources/hooks/systems/notifications/error_occurred_missing_reference_important.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:82:"sources/hooks/systems/notifications/error_occurred_missing_reference_important.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:60:"Hook_notification_error_occurred_missing_reference_important";s:7:"comment";b:1;}s:49:"Hook_notification_error_occurred_missing_resource";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:71:"sources/hooks/systems/notifications/error_occurred_missing_resource.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:71:"sources/hooks/systems/notifications/error_occurred_missing_resource.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:49:"Hook_notification_error_occurred_missing_resource";s:7:"comment";b:1;}s:36:"Hook_notification_error_occurred_rss";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/error_occurred_rss.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/error_occurred_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:36:"Hook_notification_error_occurred_rss";s:7:"comment";b:1;}s:26:"Hook_notification_filedump";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:26:"Hook_notification_filedump";s:7:"comment";b:1;}s:31:"Hook_notification_gallery_entry";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:31:"Hook_notification_gallery_entry";s:7:"comment";b:1;}s:29:"Hook_notification_hack_attack";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/hack_attack.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/hack_attack.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:29:"Hook_notification_hack_attack";s:7:"comment";b:1;}s:28:"Hook_notification_im_invited";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/im_invited.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/im_invited.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:28:"Hook_notification_im_invited";s:7:"comment";b:1;}s:33:"Hook_notification_invited_content";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/invited_content.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:33:"Hook_notification_invited_content";s:7:"comment";b:1;}s:25:"Hook_notification_invoice";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:47:"sources/hooks/systems/notifications/invoice.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:47:"sources/hooks/systems/notifications/invoice.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:25:"Hook_notification_invoice";s:7:"comment";b:1;}s:36:"Hook_notification_ip_address_sharing";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ip_address_sharing.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ip_address_sharing.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:36:"Hook_notification_ip_address_sharing";s:7:"comment";b:1;}s:22:"Hook_notification_like";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/like.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:22:"Hook_notification_like";s:7:"comment";b:1;}s:32:"Hook_notification_low_disk_space";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/low_disk_space.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_low_disk_space";s:7:"comment";b:1;}s:27:"Hook_notification_low_stock";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/low_stock.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/low_stock.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:27:"Hook_notification_low_stock";s:7:"comment";b:1;}s:41:"Hook_notification_member_calendar_changes";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_calendar_changes.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:41:"Hook_notification_member_calendar_changes";s:7:"comment";b:1;}s:41:"Hook_notification_member_entered_chatroom";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:41:"Hook_notification_member_entered_chatroom";s:7:"comment";b:1;}s:32:"Hook_notification_member_mention";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/member_mention.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_member_mention";s:7:"comment";b:1;}s:27:"Hook_notification_messaging";a:3:{s:9:"functions";a:2:{s:19:"supports_categories";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/messaging.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:27:"Hook_notification_messaging";s:7:"comment";b:1;}s:34:"Hook_notification_needs_validation";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/needs_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:34:"Hook_notification_needs_validation";s:7:"comment";b:1;}s:28:"Hook_notification_new_friend";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/new_friend.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/new_friend.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:28:"Hook_notification_new_friend";s:7:"comment";b:1;}s:27:"Hook_notification_new_order";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/new_order.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/new_order.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:27:"Hook_notification_new_order";s:7:"comment";b:1;}s:28:"Hook_notification_news_entry";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:28:"Hook_notification_news_entry";s:7:"comment";b:1;}s:34:"Hook_notification_order_dispatched";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/order_dispatched.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/order_dispatched.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:34:"Hook_notification_order_dispatched";s:7:"comment";b:1;}s:44:"Hook_notification_paid_subscription_messages";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:66:"sources/hooks/systems/notifications/paid_subscription_messages.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:66:"sources/hooks/systems/notifications/paid_subscription_messages.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:44:"Hook_notification_paid_subscription_messages";s:7:"comment";b:1;}s:34:"Hook_notification_payment_received";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/payment_received.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/payment_received.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:34:"Hook_notification_payment_received";s:7:"comment";b:1;}s:43:"Hook_notification_pointstore_request_custom";a:3:{s:9:"functions";a:4:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:65:"sources/hooks/systems/notifications/pointstore_request_custom.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:65:"sources/hooks/systems/notifications/pointstore_request_custom.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:65:"sources/hooks/systems/notifications/pointstore_request_custom.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:65:"sources/hooks/systems/notifications/pointstore_request_custom.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:43:"Hook_notification_pointstore_request_custom";s:7:"comment";b:1;}s:47:"Hook_notification_pointstore_request_forwarding";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:69:"sources/hooks/systems/notifications/pointstore_request_forwarding.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:69:"sources/hooks/systems/notifications/pointstore_request_forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:47:"Hook_notification_pointstore_request_forwarding";s:7:"comment";b:1;}s:41:"Hook_notification_pointstore_request_pop3";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/pointstore_request_pop3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/pointstore_request_pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:41:"Hook_notification_pointstore_request_pop3";s:7:"comment";b:1;}s:42:"Hook_notification_pointstore_request_quota";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:64:"sources/hooks/systems/notifications/pointstore_request_quota.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:64:"sources/hooks/systems/notifications/pointstore_request_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:42:"Hook_notification_pointstore_request_quota";s:7:"comment";b:1;}s:29:"Hook_notification_poll_chosen";a:3:{s:9:"functions";a:3:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/poll_chosen.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/poll_chosen.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/poll_chosen.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:29:"Hook_notification_poll_chosen";s:7:"comment";b:1;}s:30:"Hook_notification_quiz_results";a:3:{s:9:"functions";a:4:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/quiz_results.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/quiz_results.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/quiz_results.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/quiz_results.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:30:"Hook_notification_quiz_results";s:7:"comment";b:1;}s:38:"Hook_notification_receive_points_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/receive_points_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/receive_points_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:38:"Hook_notification_receive_points_staff";s:7:"comment";b:1;}s:33:"Hook_notification_received_points";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/received_points.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/received_points.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:33:"Hook_notification_received_points";s:7:"comment";b:1;}s:41:"Hook_notification_service_cancelled_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/service_cancelled_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/service_cancelled_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:41:"Hook_notification_service_cancelled_staff";s:7:"comment";b:1;}s:40:"Hook_notification_service_paid_for_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/service_paid_for_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/service_paid_for_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:40:"Hook_notification_service_paid_for_staff";s:7:"comment";b:1;}s:34:"Hook_notification_spam_check_block";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/spam_check_block.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/spam_check_block.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:34:"Hook_notification_spam_check_block";s:7:"comment";b:1;}s:33:"Hook_notification_staff_checklist";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/staff_checklist.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/staff_checklist.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:33:"Hook_notification_staff_checklist";s:7:"comment";b:1;}s:46:"Hook_notification_subscription_cancelled_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/subscription_cancelled_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/subscription_cancelled_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:46:"Hook_notification_subscription_cancelled_staff";s:7:"comment";b:1;}s:32:"Hook_notification_task_completed";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/task_completed.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_task_completed";s:7:"comment";b:1;}s:39:"Hook_notification_ticket_assigned_staff";a:3:{s:9:"functions";a:10:{s:19:"supports_categories";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:16:"allowed_settings";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:24:"get_default_auto_setting";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:24:"get_default_auto_setting";s:11:"description";s:147:"Find the setting that members have for a notification code if they have done some action triggering automatic setting (e.g. posted within a topic).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Automatic setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:9:"_is_staff";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:98:"Find whether someone has permission to view staff notifications and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:39:"Hook_notification_ticket_assigned_staff";s:7:"comment";b:1;}s:34:"Hook_notification_ticket_new_staff";a:3:{s:9:"functions";a:8:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:9:"_is_staff";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:98:"Find whether someone has permission to view staff notifications and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:34:"Hook_notification_ticket_new_staff";s:7:"comment";b:1;}s:30:"Hook_notification_ticket_reply";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/ticket_reply.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/ticket_reply.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:30:"Hook_notification_ticket_reply";s:7:"comment";b:1;}s:36:"Hook_notification_ticket_reply_staff";a:3:{s:9:"functions";a:6:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:9:"_is_staff";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:98:"Find whether someone has permission to view staff notifications and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:36:"Hook_notification_ticket_reply_staff";s:7:"comment";b:1;}s:22:"Hook_notification_wiki";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:22:"Hook_notification_wiki";s:7:"comment";b:1;}s:35:"Hook_page_groupings_aggregate_types";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/page_groupings/aggregate_types.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:35:"Hook_page_groupings_aggregate_types";s:7:"comment";b:1;}s:27:"Hook_page_groupings_authors";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/authors.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_authors";s:7:"comment";b:1;}s:26:"Hook_page_groupings_backup";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/backup.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_backup";s:7:"comment";b:1;}s:27:"Hook_page_groupings_banners";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/banners.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_banners";s:7:"comment";b:1;}s:29:"Hook_page_groupings_bookmarks";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/bookmarks.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_bookmarks";s:7:"comment";b:1;}s:28:"Hook_page_groupings_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/page_groupings/calendar.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:28:"Hook_page_groupings_calendar";s:7:"comment";b:1;}s:30:"Hook_page_groupings_catalogues";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/catalogues.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_catalogues";s:7:"comment";b:1;}s:24:"Hook_page_groupings_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/chat.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_chat";s:7:"comment";b:1;}s:29:"Hook_page_groupings_cns_forum";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/cns_forum.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_cns_forum";s:7:"comment";b:1;}s:38:"Hook_page_groupings_collaboration_zone";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/page_groupings/collaboration_zone.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:38:"Hook_page_groupings_collaboration_zone";s:7:"comment";b:1;}s:28:"Hook_page_groupings_commandr";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/page_groupings/commandr.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:28:"Hook_page_groupings_commandr";s:7:"comment";b:1;}s:24:"Hook_page_groupings_core";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/core.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_core";s:7:"comment";b:1;}s:34:"Hook_page_groupings_custom_comcode";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/page_groupings/custom_comcode.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:34:"Hook_page_groupings_custom_comcode";s:7:"comment";b:1;}s:27:"Hook_page_groupings_debrand";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/debrand.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_debrand";s:7:"comment";b:1;}s:29:"Hook_page_groupings_downloads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/downloads.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_downloads";s:7:"comment";b:1;}s:29:"Hook_page_groupings_ecommerce";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/ecommerce.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_ecommerce";s:7:"comment";b:1;}s:28:"Hook_page_groupings_filedump";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/page_groupings/filedump.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:28:"Hook_page_groupings_filedump";s:7:"comment";b:1;}s:29:"Hook_page_groupings_galleries";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/galleries.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_galleries";s:7:"comment";b:1;}s:29:"Hook_page_groupings_help_page";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/help_page.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_help_page";s:7:"comment";b:1;}s:26:"Hook_page_groupings_import";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/import.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_import";s:7:"comment";b:1;}s:28:"Hook_page_groupings_language";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/page_groupings/language.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:28:"Hook_page_groupings_language";s:7:"comment";b:1;}s:24:"Hook_page_groupings_ldap";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/ldap.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_ldap";s:7:"comment";b:1;}s:29:"Hook_page_groupings_messaging";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/messaging.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_messaging";s:7:"comment";b:1;}s:23:"Hook_page_groupings_msn";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/page_groupings/msn.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:23:"Hook_page_groupings_msn";s:7:"comment";b:1;}s:24:"Hook_page_groupings_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/news.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_news";s:7:"comment";b:1;}s:30:"Hook_page_groupings_newsletter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/newsletter.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_newsletter";s:7:"comment";b:1;}s:33:"Hook_page_groupings_notifications";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/page_groupings/notifications.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:33:"Hook_page_groupings_notifications";s:7:"comment";b:1;}s:27:"Hook_page_groupings_phpinfo";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/phpinfo.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_phpinfo";s:7:"comment";b:1;}s:26:"Hook_page_groupings_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/points.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_points";s:7:"comment";b:1;}s:30:"Hook_page_groupings_pointstore";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/pointstore.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_pointstore";s:7:"comment";b:1;}s:25:"Hook_page_groupings_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/page_groupings/polls.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:25:"Hook_page_groupings_polls";s:7:"comment";b:1;}s:24:"Hook_page_groupings_quiz";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/quiz.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_quiz";s:7:"comment";b:1;}s:26:"Hook_page_groupings_quotes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/quotes.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_quotes";s:7:"comment";b:1;}s:33:"Hook_page_groupings_realtime_rain";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/page_groupings/realtime_rain.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:33:"Hook_page_groupings_realtime_rain";s:7:"comment";b:1;}s:29:"Hook_page_groupings_recommend";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/recommend.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_recommend";s:7:"comment";b:1;}s:26:"Hook_page_groupings_search";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/search.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_search";s:7:"comment";b:1;}s:31:"Hook_page_groupings_setupwizard";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/page_groupings/setupwizard.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:31:"Hook_page_groupings_setupwizard";s:7:"comment";b:1;}s:23:"Hook_page_groupings_ssl";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/page_groupings/ssl.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:23:"Hook_page_groupings_ssl";s:7:"comment";b:1;}s:25:"Hook_page_groupings_staff";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/page_groupings/staff.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:25:"Hook_page_groupings_staff";s:7:"comment";b:1;}s:25:"Hook_page_groupings_stats";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/page_groupings/stats.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:25:"Hook_page_groupings_stats";s:7:"comment";b:1;}s:41:"Hook_page_groupings_supermember_directory";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:62:"sources/hooks/systems/page_groupings/supermember_directory.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:41:"Hook_page_groupings_supermember_directory";s:7:"comment";b:1;}s:31:"Hook_page_groupings_themewizard";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/page_groupings/themewizard.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:31:"Hook_page_groupings_themewizard";s:7:"comment";b:1;}s:27:"Hook_page_groupings_tickets";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/tickets.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_tickets";s:7:"comment";b:1;}s:30:"Hook_page_groupings_trackbacks";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/trackbacks.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_trackbacks";s:7:"comment";b:1;}s:31:"Hook_page_groupings_unvalidated";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/page_groupings/unvalidated.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:31:"Hook_page_groupings_unvalidated";s:7:"comment";b:1;}s:24:"Hook_page_groupings_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/wiki.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_wiki";s:7:"comment";b:1;}s:30:"Hook_page_groupings_wordfilter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/wordfilter.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_wordfilter";s:7:"comment";b:1;}s:19:"Hook_preview_banner";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:40:"sources/hooks/systems/preview/banner.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/preview/banner.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:19:"Hook_preview_banner";s:7:"comment";b:1;}s:26:"Hook_preview_block_comcode";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/block_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/block_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:26:"Hook_preview_block_comcode";s:7:"comment";b:1;}s:21:"Hook_preview_calendar";a:3:{s:9:"functions";a:1:{s:7:"applies";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}}s:4:"name";s:21:"Hook_preview_calendar";s:7:"comment";b:1;}s:26:"Hook_preview_calendar_type";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/calendar_type.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/calendar_type.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:26:"Hook_preview_calendar_type";s:7:"comment";b:1;}s:25:"Hook_preview_cns_emoticon";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:46:"sources/hooks/systems/preview/cns_emoticon.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/preview/cns_emoticon.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:25:"Hook_preview_cns_emoticon";s:7:"comment";b:1;}s:21:"Hook_preview_cns_post";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/cns_post.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/cns_post.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:21:"Hook_preview_cns_post";s:7:"comment";b:1;}s:26:"Hook_preview_cns_signature";a:3:{s:9:"functions";a:1:{s:7:"applies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/cns_signature.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:131:"Quartet: Whether it applies, the attachment ID type, whether the forum DB is used [optional], list of fields to limit to [optional]";}}}s:4:"name";s:26:"Hook_preview_cns_signature";s:7:"comment";b:1;}s:30:"Hook_preview_cns_welcome_email";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/preview/cns_welcome_email.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/preview/cns_welcome_email.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:30:"Hook_preview_cns_welcome_email";s:7:"comment";b:1;}s:25:"Hook_preview_comcode_page";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:46:"sources/hooks/systems/preview/comcode_page.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:131:"Quartet: Whether it applies, the attachment ID type, whether the forum DB is used [optional], list of fields to limit to [optional]";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/preview/comcode_page.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:25:"Hook_preview_comcode_page";s:7:"comment";b:1;}s:24:"Hook_preview_comcode_tag";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/preview/comcode_tag.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/preview/comcode_tag.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:24:"Hook_preview_comcode_tag";s:7:"comment";b:1;}s:21:"Hook_preview_comments";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/comments.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/comments.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:21:"Hook_preview_comments";s:7:"comment";b:1;}s:27:"Hook_preview_custom_comcode";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/preview/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/preview/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:27:"Hook_preview_custom_comcode";s:7:"comment";b:1;}s:21:"Hook_preview_download";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/download.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/download.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:21:"Hook_preview_download";s:7:"comment";b:1;}s:18:"Hook_preview_image";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:39:"sources/hooks/systems/preview/image.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/preview/image.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:18:"Hook_preview_image";s:7:"comment";b:1;}s:17:"Hook_preview_news";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/news.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/news.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:17:"Hook_preview_news";s:7:"comment";b:1;}s:17:"Hook_preview_poll";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/poll.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/poll.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:17:"Hook_preview_poll";s:7:"comment";b:1;}s:17:"Hook_preview_quiz";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:17:"Hook_preview_quiz";s:7:"comment";b:1;}s:24:"Hook_preview_setupwizard";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/preview/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/preview/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:24:"Hook_preview_setupwizard";s:7:"comment";b:1;}s:31:"Hook_preview_setupwizard_blocks";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/preview/setupwizard_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/preview/setupwizard_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:31:"Hook_preview_setupwizard_blocks";s:7:"comment";b:1;}s:19:"Hook_preview_ticket";a:3:{s:9:"functions";a:1:{s:7:"applies";a:6:{s:8:"filename";s:40:"sources/hooks/systems/preview/ticket.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:131:"Quartet: Whether it applies, the attachment ID type, whether the forum DB is used [optional], list of fields to limit to [optional]";}}}s:4:"name";s:19:"Hook_preview_ticket";s:7:"comment";b:1;}s:18:"Hook_preview_video";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:39:"sources/hooks/systems/preview/video.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/preview/video.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:18:"Hook_preview_video";s:7:"comment";b:1;}s:22:"Hook_preview_wiki_page";a:3:{s:9:"functions";a:1:{s:7:"applies";a:6:{s:8:"filename";s:43:"sources/hooks/systems/preview/wiki_page.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}}s:4:"name";s:22:"Hook_preview_wiki_page";s:7:"comment";b:1;}s:22:"Hook_preview_wiki_post";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:43:"sources/hooks/systems/preview/wiki_post.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/preview/wiki_post.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:22:"Hook_preview_wiki_post";s:7:"comment";b:1;}s:24:"Hook_profiles_tabs_about";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:45:"sources/hooks/systems/profiles_tabs/about.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:45:"sources/hooks/systems/profiles_tabs/about.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents NULL, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:24:"Hook_profiles_tabs_about";s:7:"comment";b:1;}s:23:"Hook_profiles_tabs_blog";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:44:"sources/hooks/systems/profiles_tabs/blog.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:44:"sources/hooks/systems/profiles_tabs/blog.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:23:"Hook_profiles_tabs_blog";s:7:"comment";b:1;}s:23:"Hook_profiles_tabs_edit";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:44:"sources/hooks/systems/profiles_tabs/edit.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:44:"sources/hooks/systems/profiles_tabs/edit.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:23:"Hook_profiles_tabs_edit";s:7:"comment";b:1;}s:26:"Hook_profiles_tabs_friends";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:47:"sources/hooks/systems/profiles_tabs/friends.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:47:"sources/hooks/systems/profiles_tabs/friends.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:26:"Hook_profiles_tabs_friends";s:7:"comment";b:1;}s:28:"Hook_profiles_tabs_galleries";a:3:{s:9:"functions";a:3:{s:9:"is_active";a:6:{s:8:"filename";s:49:"sources/hooks/systems/profiles_tabs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:27:"find_num_personal_galleries";a:6:{s:8:"filename";s:49:"sources/hooks/systems/profiles_tabs/galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"member_id_of";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:20:"The ID of the member";s:11:"phpdoc_name";s:12:"member_id_of";}}s:4:"name";s:27:"find_num_personal_galleries";s:11:"description";s:46:"Find number of personal galleries of a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"Number of personal galleries";}}s:10:"render_tab";a:6:{s:8:"filename";s:49:"sources/hooks/systems/profiles_tabs/galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:28:"Hook_profiles_tabs_galleries";s:7:"comment";b:1;}s:25:"Hook_profiles_tabs_points";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:46:"sources/hooks/systems/profiles_tabs/points.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:46:"sources/hooks/systems/profiles_tabs/points.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:25:"Hook_profiles_tabs_points";s:7:"comment";b:1;}s:24:"Hook_profiles_tabs_posts";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:45:"sources/hooks/systems/profiles_tabs/posts.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:45:"sources/hooks/systems/profiles_tabs/posts.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:24:"Hook_profiles_tabs_posts";s:7:"comment";b:1;}s:22:"Hook_profiles_tabs_pts";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:43:"sources/hooks/systems/profiles_tabs/pts.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:43:"sources/hooks/systems/profiles_tabs/pts.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:22:"Hook_profiles_tabs_pts";s:7:"comment";b:1;}s:27:"Hook_profiles_tabs_warnings";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:48:"sources/hooks/systems/profiles_tabs/warnings.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:48:"sources/hooks/systems/profiles_tabs/warnings.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:27:"Hook_profiles_tabs_warnings";s:7:"comment";b:1;}s:30:"Hook_profiles_tabs_edit_avatar";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:51:"sources/hooks/systems/profiles_tabs_edit/avatar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:51:"sources/hooks/systems/profiles_tabs_edit/avatar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:30:"Hook_profiles_tabs_edit_avatar";s:7:"comment";b:1;}s:30:"Hook_profiles_tabs_edit_delete";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:51:"sources/hooks/systems/profiles_tabs_edit/delete.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:51:"sources/hooks/systems/profiles_tabs_edit/delete.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:30:"Hook_profiles_tabs_edit_delete";s:7:"comment";b:1;}s:37:"Hook_profiles_tabs_edit_notifications";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:58:"sources/hooks/systems/profiles_tabs_edit/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:58:"sources/hooks/systems/profiles_tabs_edit/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:37:"Hook_profiles_tabs_edit_notifications";s:7:"comment";b:1;}s:29:"Hook_profiles_tabs_edit_photo";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:50:"sources/hooks/systems/profiles_tabs_edit/photo.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:50:"sources/hooks/systems/profiles_tabs_edit/photo.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:29:"Hook_profiles_tabs_edit_photo";s:7:"comment";b:1;}s:31:"Hook_profiles_tabs_edit_privacy";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:52:"sources/hooks/systems/profiles_tabs_edit/privacy.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:52:"sources/hooks/systems/profiles_tabs_edit/privacy.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:31:"Hook_profiles_tabs_edit_privacy";s:7:"comment";b:1;}s:31:"Hook_profiles_tabs_edit_profile";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:52:"sources/hooks/systems/profiles_tabs_edit/profile.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:52:"sources/hooks/systems/profiles_tabs_edit/profile.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:31:"Hook_profiles_tabs_edit_profile";s:7:"comment";b:1;}s:32:"Hook_profiles_tabs_edit_settings";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:53:"sources/hooks/systems/profiles_tabs_edit/settings.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:53:"sources/hooks/systems/profiles_tabs_edit/settings.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:32:"Hook_profiles_tabs_edit_settings";s:7:"comment";b:1;}s:33:"Hook_profiles_tabs_edit_signature";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:54:"sources/hooks/systems/profiles_tabs_edit/signature.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:54:"sources/hooks/systems/profiles_tabs_edit/signature.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:33:"Hook_profiles_tabs_edit_signature";s:7:"comment";b:1;}s:29:"Hook_profiles_tabs_edit_title";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:50:"sources/hooks/systems/profiles_tabs_edit/title.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:50:"sources/hooks/systems/profiles_tabs_edit/title.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:29:"Hook_profiles_tabs_edit_title";s:7:"comment";b:1;}s:28:"Hook_realtime_rain_actionlog";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/realtime_rain/actionlog.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:28:"Hook_realtime_rain_actionlog";s:7:"comment";b:1;}s:26:"Hook_realtime_rain_banners";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/realtime_rain/banners.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:26:"Hook_realtime_rain_banners";s:7:"comment";b:1;}s:27:"Hook_realtime_rain_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/realtime_rain/calendar.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:27:"Hook_realtime_rain_calendar";s:7:"comment";b:1;}s:23:"Hook_realtime_rain_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/realtime_rain/chat.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:23:"Hook_realtime_rain_chat";s:7:"comment";b:1;}s:22:"Hook_realtime_rain_cns";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/realtime_rain/cns.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:22:"Hook_realtime_rain_cns";s:7:"comment";b:1;}s:28:"Hook_realtime_rain_ecommerce";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/realtime_rain/ecommerce.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:28:"Hook_realtime_rain_ecommerce";s:7:"comment";b:1;}s:23:"Hook_realtime_rain_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/realtime_rain/news.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:23:"Hook_realtime_rain_news";s:7:"comment";b:1;}s:25:"Hook_realtime_rain_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/realtime_rain/points.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:25:"Hook_realtime_rain_points";s:7:"comment";b:1;}s:24:"Hook_realtime_rain_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/realtime_rain/polls.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:24:"Hook_realtime_rain_polls";s:7:"comment";b:1;}s:28:"Hook_realtime_rain_recommend";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/realtime_rain/recommend.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:28:"Hook_realtime_rain_recommend";s:7:"comment";b:1;}s:25:"Hook_realtime_rain_search";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/realtime_rain/search.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:25:"Hook_realtime_rain_search";s:7:"comment";b:1;}s:27:"Hook_realtime_rain_security";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/realtime_rain/security.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:27:"Hook_realtime_rain_security";s:7:"comment";b:1;}s:24:"Hook_realtime_rain_stats";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/realtime_rain/stats.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:24:"Hook_realtime_rain_stats";s:7:"comment";b:1;}s:48:"Hook_resource_meta_aware_aggregate_type_instance";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:69:"sources/hooks/systems/resource_meta_aware/aggregate_type_instance.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:48:"Hook_resource_meta_aware_aggregate_type_instance";s:7:"comment";b:1;}s:35:"Hook_resource_meta_aware_award_type";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:56:"sources/hooks/systems/resource_meta_aware/award_type.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:35:"Hook_resource_meta_aware_award_type";s:7:"comment";b:1;}s:28:"Hook_resource_meta_aware_cpf";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/resource_meta_aware/cpf.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:28:"Hook_resource_meta_aware_cpf";s:7:"comment";b:1;}s:43:"Hook_resource_meta_aware_custom_comcode_tag";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:64:"sources/hooks/systems/resource_meta_aware/custom_comcode_tag.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:43:"Hook_resource_meta_aware_custom_comcode_tag";s:7:"comment";b:1;}s:41:"Hook_resource_meta_aware_download_licence";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:62:"sources/hooks/systems/resource_meta_aware/download_licence.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:41:"Hook_resource_meta_aware_download_licence";s:7:"comment";b:1;}s:33:"Hook_resource_meta_aware_emoticon";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/systems/resource_meta_aware/emoticon.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:33:"Hook_resource_meta_aware_emoticon";s:7:"comment";b:1;}s:39:"Hook_resource_meta_aware_forum_grouping";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:60:"sources/hooks/systems/resource_meta_aware/forum_grouping.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:39:"Hook_resource_meta_aware_forum_grouping";s:7:"comment";b:1;}s:29:"Hook_resource_meta_aware_menu";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/resource_meta_aware/menu.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:29:"Hook_resource_meta_aware_menu";s:7:"comment";b:1;}s:34:"Hook_resource_meta_aware_menu_item";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:55:"sources/hooks/systems/resource_meta_aware/menu_item.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:34:"Hook_resource_meta_aware_menu_item";s:7:"comment";b:1;}s:41:"Hook_resource_meta_aware_multi_moderation";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:62:"sources/hooks/systems/resource_meta_aware/multi_moderation.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:41:"Hook_resource_meta_aware_multi_moderation";s:7:"comment";b:1;}s:35:"Hook_resource_meta_aware_newsletter";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:56:"sources/hooks/systems/resource_meta_aware/newsletter.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:35:"Hook_resource_meta_aware_newsletter";s:7:"comment";b:1;}s:46:"Hook_resource_meta_aware_newsletter_subscriber";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:67:"sources/hooks/systems/resource_meta_aware/newsletter_subscriber.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:46:"Hook_resource_meta_aware_newsletter_subscriber";s:7:"comment";b:1;}s:44:"Hook_resource_meta_aware_periodic_newsletter";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:65:"sources/hooks/systems/resource_meta_aware/periodic_newsletter.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:44:"Hook_resource_meta_aware_periodic_newsletter";s:7:"comment";b:1;}s:38:"Hook_resource_meta_aware_post_template";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:59:"sources/hooks/systems/resource_meta_aware/post_template.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:38:"Hook_resource_meta_aware_post_template";s:7:"comment";b:1;}s:36:"Hook_resource_meta_aware_ticket_type";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:57:"sources/hooks/systems/resource_meta_aware/ticket_type.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:36:"Hook_resource_meta_aware_ticket_type";s:7:"comment";b:1;}s:47:"Hook_resource_meta_aware_usergroup_subscription";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:68:"sources/hooks/systems/resource_meta_aware/usergroup_subscription.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:47:"Hook_resource_meta_aware_usergroup_subscription";s:7:"comment";b:1;}s:38:"Hook_resource_meta_aware_welcome_email";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:59:"sources/hooks/systems/resource_meta_aware/welcome_email.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:38:"Hook_resource_meta_aware_welcome_email";s:7:"comment";b:1;}s:29:"Hook_resource_meta_aware_zone";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/resource_meta_aware/zone.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:29:"Hook_resource_meta_aware_zone";s:7:"comment";b:1;}s:29:"Hook_rss_admin_recent_actions";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/rss/admin_recent_actions.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:29:"Hook_rss_admin_recent_actions";s:7:"comment";b:1;}s:16:"Hook_rss_authors";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:37:"sources/hooks/systems/rss/authors.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:16:"Hook_rss_authors";s:7:"comment";b:1;}s:17:"Hook_rss_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/rss/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:17:"Hook_rss_calendar";s:7:"comment";b:1;}s:19:"Hook_rss_catalogues";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/rss/catalogues.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:19:"Hook_rss_catalogues";s:7:"comment";b:1;}s:13:"Hook_rss_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:34:"sources/hooks/systems/rss/chat.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:13:"Hook_rss_chat";s:7:"comment";b:1;}s:22:"Hook_rss_cns_birthdays";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/rss/cns_birthdays.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:22:"Hook_rss_cns_birthdays";s:7:"comment";b:1;}s:22:"Hook_rss_cns_forumview";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/rss/cns_forumview.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:22:"Hook_rss_cns_forumview";s:7:"comment";b:1;}s:20:"Hook_rss_cns_members";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/rss/cns_members.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:20:"Hook_rss_cns_members";s:7:"comment";b:1;}s:27:"Hook_rss_cns_private_topics";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/rss/cns_private_topics.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:27:"Hook_rss_cns_private_topics";s:7:"comment";b:1;}s:22:"Hook_rss_cns_topicview";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/rss/cns_topicview.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:22:"Hook_rss_cns_topicview";s:7:"comment";b:1;}s:26:"Hook_rss_cns_unread_topics";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/rss/cns_unread_topics.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:26:"Hook_rss_cns_unread_topics";s:7:"comment";b:1;}s:22:"Hook_rss_comcode_pages";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/rss/comcode_pages.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:22:"Hook_rss_comcode_pages";s:7:"comment";b:1;}s:17:"Hook_rss_comments";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/rss/comments.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"full_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:10:"full_title";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:17:"Hook_rss_comments";s:7:"comment";b:1;}s:18:"Hook_rss_downloads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/rss/downloads.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:18:"Hook_rss_downloads";s:7:"comment";b:1;}s:17:"Hook_rss_filedump";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/rss/filedump.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:17:"Hook_rss_filedump";s:7:"comment";b:1;}s:18:"Hook_rss_galleries";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/rss/galleries.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:18:"Hook_rss_galleries";s:7:"comment";b:1;}s:13:"Hook_rss_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:34:"sources/hooks/systems/rss/news.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:13:"Hook_rss_news";s:7:"comment";b:1;}s:15:"Hook_rss_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:36:"sources/hooks/systems/rss/points.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:15:"Hook_rss_points";s:7:"comment";b:1;}s:14:"Hook_rss_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:35:"sources/hooks/systems/rss/polls.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:14:"Hook_rss_polls";s:7:"comment";b:1;}s:16:"Hook_rss_tickets";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:37:"sources/hooks/systems/rss/tickets.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:16:"Hook_rss_tickets";s:7:"comment";b:1;}s:26:"Hook_rss_web_notifications";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/rss/web_notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:26:"Hook_rss_web_notifications";s:7:"comment";b:1;}s:13:"Hook_rss_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:34:"sources/hooks/systems/rss/wiki.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:13:"Hook_rss_wiki";s:7:"comment";b:1;}s:19:"Hook_sitemap_author";a:3:{s:9:"functions";a:2:{s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/author.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/author.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:19:"Hook_sitemap_author";s:7:"comment";b:1;}s:19:"Hook_sitemap_banner";a:3:{s:9:"functions";a:4:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/banner.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/banner.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/banner.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}s:17:"_find_theme_image";a:5:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/banner.php";s:10:"parameters";a:2:{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:18:"Calendar type row.";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:6:"struct";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"Target structure.";s:11:"phpdoc_name";s:6:"struct";}}s:4:"name";s:17:"_find_theme_image";s:11:"description";s:45:"Find the image for a position in the Sitemap.";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Hook_sitemap_banner";s:7:"comment";b:1;}s:22:"Hook_sitemap_bookmarks";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/bookmarks.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/bookmarks.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/bookmarks.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:22:"Hook_sitemap_bookmarks";s:7:"comment";b:1;}s:26:"Hook_sitemap_calendar_type";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/calendar_type.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/calendar_type.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/calendar_type.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:26:"Hook_sitemap_calendar_type";s:7:"comment";b:1;}s:22:"Hook_sitemap_catalogue";a:3:{s:9:"functions";a:4:{s:17:"handles_page_link";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/catalogue.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:18:"get_privilege_page";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/catalogue.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/catalogue.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/catalogue.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:22:"Hook_sitemap_catalogue";s:7:"comment";b:1;}s:31:"Hook_sitemap_catalogue_category";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/catalogue_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/catalogue_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:31:"Hook_sitemap_catalogue_category";s:7:"comment";b:1;}s:28:"Hook_sitemap_catalogue_entry";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/catalogue_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/catalogue_entry.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:28:"Hook_sitemap_catalogue_entry";s:7:"comment";b:1;}s:17:"Hook_sitemap_chat";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/chat.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/chat.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_chat";s:7:"comment";b:1;}s:25:"Hook_sitemap_comcode_page";a:3:{s:9:"functions";a:2:{s:17:"handles_page_link";a:6:{s:8:"filename";s:46:"sources/hooks/systems/sitemap/comcode_page.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:8:"get_node";a:6:{s:8:"filename";s:46:"sources/hooks/systems/sitemap/comcode_page.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:25:"Hook_sitemap_comcode_page";s:7:"comment";b:1;}s:28:"Hook_sitemap_config_category";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/config_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/config_category.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/config_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:28:"Hook_sitemap_config_category";s:7:"comment";b:1;}s:21:"Hook_sitemap_download";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:42:"sources/hooks/systems/sitemap/download.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:42:"sources/hooks/systems/sitemap/download.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:21:"Hook_sitemap_download";s:7:"comment";b:1;}s:30:"Hook_sitemap_download_category";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:51:"sources/hooks/systems/sitemap/download_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:51:"sources/hooks/systems/sitemap/download_category.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:51:"sources/hooks/systems/sitemap/download_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:30:"Hook_sitemap_download_category";s:7:"comment";b:1;}s:24:"Hook_sitemap_entry_point";a:3:{s:9:"functions";a:2:{s:17:"handles_page_link";a:6:{s:8:"filename";s:45:"sources/hooks/systems/sitemap/entry_point.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:8:"get_node";a:6:{s:8:"filename";s:45:"sources/hooks/systems/sitemap/entry_point.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:24:"Hook_sitemap_entry_point";s:7:"comment";b:1;}s:18:"Hook_sitemap_event";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/event.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/event.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_event";s:7:"comment";b:1;}s:18:"Hook_sitemap_forum";a:3:{s:9:"functions";a:5:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:9:"is_active";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:17:"handles_page_link";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_forum";s:7:"comment";b:1;}s:20:"Hook_sitemap_gallery";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:41:"sources/hooks/systems/sitemap/gallery.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:41:"sources/hooks/systems/sitemap/gallery.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:41:"sources/hooks/systems/sitemap/gallery.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:20:"Hook_sitemap_gallery";s:7:"comment";b:1;}s:18:"Hook_sitemap_group";a:3:{s:9:"functions";a:3:{s:9:"is_active";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/group.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/group.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/group.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_group";s:7:"comment";b:1;}s:18:"Hook_sitemap_image";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/image.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/image.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_image";s:7:"comment";b:1;}s:19:"Hook_sitemap_member";a:3:{s:9:"functions";a:3:{s:9:"is_active";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/member.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/member.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/member.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:19:"Hook_sitemap_member";s:7:"comment";b:1;}s:17:"Hook_sitemap_news";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/news.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_news";s:7:"comment";b:1;}s:26:"Hook_sitemap_news_category";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/news_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/news_category.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/news_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:26:"Hook_sitemap_news_category";s:7:"comment";b:1;}s:17:"Hook_sitemap_page";a:3:{s:9:"functions";a:2:{s:17:"handles_page_link";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/page.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/page.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_page";s:7:"comment";b:1;}s:26:"Hook_sitemap_page_grouping";a:3:{s:9:"functions";a:2:{s:17:"handles_page_link";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/page_grouping.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:8:"get_node";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/page_grouping.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:14:"orphaned_pages";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:14:"orphaned_pages";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:26:"Hook_sitemap_page_grouping";s:7:"comment";b:1;}s:17:"Hook_sitemap_poll";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/poll.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/poll.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/poll.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_poll";s:7:"comment";b:1;}s:31:"Hook_sitemap_privilege_category";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/privilege_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/privilege_category.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/privilege_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:31:"Hook_sitemap_privilege_category";s:7:"comment";b:1;}s:17:"Hook_sitemap_quiz";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/quiz.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/quiz.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_quiz";s:7:"comment";b:1;}s:17:"Hook_sitemap_root";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/root.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/root.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/root.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_root";s:7:"comment";b:1;}s:19:"Hook_sitemap_search";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/search.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/search.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/search.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:19:"Hook_sitemap_search";s:7:"comment";b:1;}s:18:"Hook_sitemap_topic";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/topic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:9:"is_active";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/topic.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/topic.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_topic";s:7:"comment";b:1;}s:18:"Hook_sitemap_video";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/video.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/video.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_video";s:7:"comment";b:1;}s:22:"Hook_sitemap_wiki_page";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/wiki_page.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/wiki_page.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/wiki_page.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:22:"Hook_sitemap_wiki_page";s:7:"comment";b:1;}s:17:"Hook_sitemap_zone";a:3:{s:9:"functions";a:4:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/zone.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"handles_page_link";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/zone.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:39:"extract_child_page_link_permission_pair";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/zone.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:39:"extract_child_page_link_permission_pair";s:11:"description";s:73:"Convert a page-link to a category ID and category permission module type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The pair (null: permission modules not handled)";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/zone.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_zone";s:7:"comment";b:1;}s:24:"Hook_snippet_backup_size";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/snippets/backup_size.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:24:"Hook_snippet_backup_size";s:7:"comment";b:1;}s:18:"Hook_snippet_block";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/snippets/block.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:18:"Hook_snippet_block";s:7:"comment";b:1;}s:40:"Hook_snippet_calendar_recurrence_suggest";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:62:"sources/hooks/systems/snippets/calendar_recurrence_suggest.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:40:"Hook_snippet_calendar_recurrence_suggest";s:7:"comment";b:1;}s:26:"Hook_snippet_captcha_wrong";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/snippets/captcha_wrong.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:26:"Hook_snippet_captcha_wrong";s:7:"comment";b:1;}s:34:"Hook_snippet_checklist_task_manage";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/snippets/checklist_task_manage.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:34:"Hook_snippet_checklist_task_manage";s:7:"comment";b:1;}s:21:"Hook_snippet_commandr";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/snippets/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:21:"Hook_snippet_commandr";s:7:"comment";b:1;}s:21:"Hook_snippet_comments";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/snippets/comments.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:21:"Hook_snippet_comments";s:7:"comment";b:1;}s:18:"Hook_snippet_count";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/snippets/count.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:18:"Hook_snippet_count";s:7:"comment";b:1;}s:30:"Hook_snippet_css_compile__text";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/snippets/css_compile__text.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:30:"Hook_snippet_css_compile__text";s:7:"comment";b:1;}s:26:"Hook_snippet_exists_banner";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/snippets/exists_banner.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:26:"Hook_snippet_exists_banner";s:7:"comment";b:1;}s:31:"Hook_snippet_exists_banner_type";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/snippets/exists_banner_type.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:31:"Hook_snippet_exists_banner_type";s:7:"comment";b:1;}s:29:"Hook_snippet_exists_catalogue";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/snippets/exists_catalogue.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:29:"Hook_snippet_exists_catalogue";s:7:"comment";b:1;}s:25:"Hook_snippet_exists_email";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/snippets/exists_email.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:25:"Hook_snippet_exists_email";s:7:"comment";b:1;}s:28:"Hook_snippet_exists_emoticon";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/snippets/exists_emoticon.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:28:"Hook_snippet_exists_emoticon";s:7:"comment";b:1;}s:27:"Hook_snippet_exists_gallery";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/snippets/exists_gallery.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:27:"Hook_snippet_exists_gallery";s:7:"comment";b:1;}s:23:"Hook_snippet_exists_tag";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/snippets/exists_tag.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:23:"Hook_snippet_exists_tag";s:7:"comment";b:1;}s:25:"Hook_snippet_exists_theme";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/snippets/exists_theme.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:25:"Hook_snippet_exists_theme";s:7:"comment";b:1;}s:29:"Hook_snippet_exists_usergroup";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/snippets/exists_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:29:"Hook_snippet_exists_usergroup";s:7:"comment";b:1;}s:24:"Hook_snippet_exists_zone";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/snippets/exists_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:24:"Hook_snippet_exists_zone";s:7:"comment";b:1;}s:29:"Hook_snippet_im_friends_rejig";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/snippets/im_friends_rejig.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:29:"Hook_snippet_im_friends_rejig";s:7:"comment";b:1;}s:27:"Hook_snippet_invite_missing";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/snippets/invite_missing.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:27:"Hook_snippet_invite_missing";s:7:"comment";b:1;}s:28:"Hook_snippet_management_menu";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/snippets/management_menu.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:28:"Hook_snippet_management_menu";s:7:"comment";b:1;}s:27:"Hook_snippet_member_tooltip";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/snippets/member_tooltip.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:98:"Standard modular run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:27:"Hook_snippet_member_tooltip";s:7:"comment";b:1;}s:30:"Hook_snippet_password_strength";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/snippets/password_strength.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:30:"Hook_snippet_password_strength";s:7:"comment";b:1;}s:24:"Hook_snippet_profile_tab";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/snippets/profile_tab.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:24:"Hook_snippet_profile_tab";s:7:"comment";b:1;}s:19:"Hook_snippet_rating";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/snippets/rating.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:19:"Hook_snippet_rating";s:7:"comment";b:1;}s:31:"Hook_snippet_realtime_rain_load";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/snippets/realtime_rain_load.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:31:"Hook_snippet_realtime_rain_load";s:7:"comment";b:1;}s:33:"Hook_snippet_themewizard_equation";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/snippets/themewizard_equation.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:33:"Hook_snippet_themewizard_equation";s:7:"comment";b:1;}s:15:"Hook_startup_im";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:36:"sources/hooks/systems/startup/im.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:17:"Run startup code.";s:5:"flags";a:0:{}}}s:4:"name";s:15:"Hook_startup_im";s:7:"comment";b:1;}s:37:"Hook_startup_notification_poller_init";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:58:"sources/hooks/systems/startup/notification_poller_init.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:17:"Run startup code.";s:5:"flags";a:0:{}}}s:4:"name";s:37:"Hook_startup_notification_poller_init";s:7:"comment";b:1;}s:29:"Hook_symbol_BETA_CSS_PROPERTY";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/symbols/BETA_CSS_PROPERTY.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:29:"Hook_symbol_BETA_CSS_PROPERTY";s:7:"comment";b:1;}s:21:"Hook_symbol_CART_LINK";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/symbols/CART_LINK.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:21:"Hook_symbol_CART_LINK";s:7:"comment";b:1;}s:44:"Hook_symbol_CATALOGUE_ENTRY_ALL_FIELD_VALUES";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:66:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_ALL_FIELD_VALUES.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:44:"Hook_symbol_CATALOGUE_ENTRY_ALL_FIELD_VALUES";s:7:"comment";b:1;}s:36:"Hook_symbol_CATALOGUE_ENTRY_BACKREFS";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_BACKREFS.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:36:"Hook_symbol_CATALOGUE_ENTRY_BACKREFS";s:7:"comment";b:1;}s:39:"Hook_symbol_CATALOGUE_ENTRY_FIELD_VALUE";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_FIELD_VALUE.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:39:"Hook_symbol_CATALOGUE_ENTRY_FIELD_VALUE";s:7:"comment";b:1;}s:45:"Hook_symbol_CATALOGUE_ENTRY_FIELD_VALUE_PLAIN";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:67:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_FIELD_VALUE_PLAIN.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:45:"Hook_symbol_CATALOGUE_ENTRY_FIELD_VALUE_PLAIN";s:7:"comment";b:1;}s:31:"Hook_symbol_CATALOGUE_ENTRY_FOR";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_FOR.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:31:"Hook_symbol_CATALOGUE_ENTRY_FOR";s:7:"comment";b:1;}s:19:"Hook_symbol_CHAT_IM";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/symbols/CHAT_IM.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:19:"Hook_symbol_CHAT_IM";s:7:"comment";b:1;}s:25:"Hook_symbol_CKEDITOR_PATH";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/symbols/CKEDITOR_PATH.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:25:"Hook_symbol_CKEDITOR_PATH";s:7:"comment";b:1;}s:24:"Hook_symbol_COMCODE_TAGS";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/symbols/COMCODE_TAGS.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:24:"Hook_symbol_COMCODE_TAGS";s:7:"comment";b:1;}s:19:"Hook_symbol_COUNTRY";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/symbols/COUNTRY.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:19:"Hook_symbol_COUNTRY";s:7:"comment";b:1;}s:32:"Hook_symbol_COUNTRY_CODE_TO_NAME";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/symbols/COUNTRY_CODE_TO_NAME.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:32:"Hook_symbol_COUNTRY_CODE_TO_NAME";s:7:"comment";b:1;}s:32:"Hook_symbol_COUNTRY_NAME_TO_CODE";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/symbols/COUNTRY_NAME_TO_CODE.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:32:"Hook_symbol_COUNTRY_NAME_TO_CODE";s:7:"comment";b:1;}s:20:"Hook_symbol_CPF_LIST";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/symbols/CPF_LIST.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:20:"Hook_symbol_CPF_LIST";s:7:"comment";b:1;}s:20:"Hook_symbol_CURRENCY";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/symbols/CURRENCY.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:20:"Hook_symbol_CURRENCY";s:7:"comment";b:1;}s:27:"Hook_symbol_CURRENCY_SYMBOL";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/symbols/CURRENCY_SYMBOL.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:27:"Hook_symbol_CURRENCY_SYMBOL";s:7:"comment";b:1;}s:22:"Hook_symbol_DEEP_CLEAN";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/symbols/DEEP_CLEAN.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:22:"Hook_symbol_DEEP_CLEAN";s:7:"comment";b:1;}s:33:"Hook_symbol_GALLERY_VIDEO_FOR_URL";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/symbols/GALLERY_VIDEO_FOR_URL.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:33:"Hook_symbol_GALLERY_VIDEO_FOR_URL";s:7:"comment";b:1;}s:18:"Hook_symbol_REGION";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/symbols/REGION.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:18:"Hook_symbol_REGION";s:7:"comment";b:1;}s:24:"Hook_symbol_SHOW_RATINGS";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/symbols/SHOW_RATINGS.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:24:"Hook_symbol_SHOW_RATINGS";s:7:"comment";b:1;}s:23:"Hook_symbol_STOCK_CHECK";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/symbols/STOCK_CHECK.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:23:"Hook_symbol_STOCK_CHECK";s:7:"comment";b:1;}s:29:"Hook_task_cns_members_recache";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/tasks/cns_members_recache.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:29:"Hook_task_cns_members_recache";s:7:"comment";b:1;}s:21:"Hook_task_cns_recache";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/tasks/cns_recache.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:21:"Hook_task_cns_recache";s:7:"comment";b:1;}s:28:"Hook_task_cns_topics_recache";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/tasks/cns_topics_recache.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:28:"Hook_task_cns_topics_recache";s:7:"comment";b:1;}s:31:"Hook_task_dispatch_notification";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/tasks/dispatch_notification.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"dispatcher";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:86:"The notification dispatch object (pre-filled with details of the notification to send)";s:11:"phpdoc_name";s:10:"dispatcher";}i:1;a:7:{s:4:"name";s:4:"csss";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:"List of CSS files to require (null: none)";s:11:"phpdoc_name";s:4:"csss";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:31:"Hook_task_dispatch_notification";s:7:"comment";b:1;}s:26:"Hook_task_download_gallery";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/download_gallery.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:23:"The gallery to download";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:26:"Hook_task_download_gallery";s:7:"comment";b:1;}s:29:"Hook_task_download_member_csv";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/tasks/download_member_csv.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:15:"filter_by_allow";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:80:"Only provide members that have "Receive newsletters and other site updates" set.";s:11:"phpdoc_name";s:15:"filter_by_allow";}i:1;a:5:{s:4:"name";s:9:"extension";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"File extension to use.";s:11:"phpdoc_name";s:9:"extension";}i:2;a:5:{s:4:"name";s:6:"preset";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Preset to use.";s:11:"phpdoc_name";s:6:"preset";}i:3;a:5:{s:4:"name";s:13:"fields_to_use";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"List of fields to use (empty: all).";s:11:"phpdoc_name";s:13:"fields_to_use";}i:4;a:5:{s:4:"name";s:10:"usergroups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"List of usergroups to use (empty: all).";s:11:"phpdoc_name";s:10:"usergroups";}i:5;a:5:{s:4:"name";s:8:"order_by";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Field to order by.";s:11:"phpdoc_name";s:8:"order_by";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:22:"_get_csv_member_record";a:6:{s:8:"filename";s:51:"sources/hooks/systems/tasks/download_member_csv.php";s:10:"parameters";a:6:{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:10:"Member row";s:11:"phpdoc_name";s:1:"m";}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:24:"Map of usergroup details";s:11:"phpdoc_name";s:6:"groups";}i:2;a:5:{s:4:"name";s:8:"headings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:44:"List of headings to pull from the member row";s:11:"phpdoc_name";s:8:"headings";}i:3;a:5:{s:4:"name";s:4:"cpfs";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"List of CPFS to pull";s:11:"phpdoc_name";s:4:"cpfs";}i:4;a:5:{s:4:"name";s:13:"member_groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"List of member group membership records";s:11:"phpdoc_name";s:13:"member_groups";}i:5;a:5:{s:4:"name";s:18:"subscription_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:26:"List of subscription types";s:11:"phpdoc_name";s:18:"subscription_types";}}s:4:"name";s:22:"_get_csv_member_record";s:11:"description";s:39:"Get a CSV-outputtable row for a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The row";}}}s:4:"name";s:29:"Hook_task_download_member_csv";s:7:"comment";b:1;}s:26:"Hook_task_export_catalogue";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/export_catalogue.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:23:"The catalogue to export";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:26:"Hook_task_export_catalogue";s:7:"comment";b:1;}s:27:"Hook_task_export_points_log";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/tasks/export_points_log.php";s:10:"parameters";a:2:{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:9:"Date from";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:7:"Date to";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:27:"Hook_task_export_points_log";s:7:"comment";b:1;}s:26:"Hook_task_find_broken_urls";a:3:{s:9:"functions";a:6:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:16:"check_url_fields";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:1;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:2;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}}s:4:"name";s:16:"check_url_fields";s:11:"description";s:33:"Check URL fields for broken URLs.";s:5:"flags";a:0:{}}s:20:"check_comcode_fields";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:1;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:2;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}}s:4:"name";s:20:"check_comcode_fields";s:11:"description";s:37:"Check Comcode fields for broken URLs.";s:5:"flags";a:0:{}}s:16:"check_catalogues";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:1;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:2;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}}s:4:"name";s:16:"check_catalogues";s:11:"description";s:33:"Check catalogues for broken URLs.";s:5:"flags";a:0:{}}s:19:"check_comcode_pages";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:1;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:2;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}}s:4:"name";s:19:"check_comcode_pages";s:11:"description";s:36:"Check Comcode pages for broken URLs.";s:5:"flags";a:0:{}}s:9:"check_url";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:8:{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:12:"URL to check";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:5:"table";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:2:"ID";s:11:"phpdoc_name";s:2:"id";}i:4;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:5;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:6;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}i:7;a:7:{s:4:"name";s:4:"spot";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:53:"A textual identifier to where the content can be seen";s:11:"phpdoc_name";s:4:"spot";}}s:4:"name";s:9:"check_url";s:11:"description";s:32:"Check to see if a URL is broken.";s:5:"flags";a:0:{}}}s:4:"name";s:26:"Hook_task_find_broken_urls";s:7:"comment";b:1;}s:36:"Hook_task_find_orphaned_lang_strings";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/tasks/find_orphaned_lang_strings.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:5:"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 limit to (null: no limit)";s:11:"phpdoc_name";s:5:"table";}i:1;a:7:{s:4:"name";s:3:"fix";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Whether to fix issues";s:11:"phpdoc_name";s:3:"fix";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:36:"Hook_task_find_orphaned_lang_strings";s:7:"comment";b:1;}s:31:"Hook_task_find_orphaned_uploads";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/tasks/find_orphaned_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:6:"do_dir";a:6:{s:8:"filename";s:53:"sources/hooks/systems/tasks/find_orphaned_uploads.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:14:"Path to search";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:6:"do_dir";s:11:"description";s:41:"Search a directory recursively for files.";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_task_find_orphaned_uploads";s:7:"comment";b:1;}s:26:"Hook_task_import_catalogue";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/import_catalogue.php";s:10:"parameters";a:12:{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:"key_field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The title of the key field";s:11:"phpdoc_name";s:9:"key_field";}i:2;a:5:{s:4:"name";s:12:"new_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"New handling method";s:11:"phpdoc_name";s:12:"new_handling";}i:3;a:5:{s:4:"name";s:15:"delete_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Delete handling method";s:11:"phpdoc_name";s:15:"delete_handling";}i:4;a:5:{s:4:"name";s:15:"update_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Update handling method";s:11:"phpdoc_name";s:15:"update_handling";}i:5;a:5:{s:4:"name";s:19:"meta_keywords_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"Meta keywords field";s:11:"phpdoc_name";s:19:"meta_keywords_field";}i:6;a:5:{s:4:"name";s:22:"meta_description_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Meta description field";s:11:"phpdoc_name";s:22:"meta_description_field";}i:7;a:5:{s:4:"name";s:11:"notes_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"Notes field";s:11:"phpdoc_name";s:11:"notes_field";}i:8;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether rating is allowed for this resource";s:11:"phpdoc_name";s:12:"allow_rating";}i:9;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether comments are allowed for this resource";s:11:"phpdoc_name";s:14:"allow_comments";}i:10;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether trackbacks are allowed for this resource";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:11;a:5:{s:4:"name";s:8:"csv_name";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The CSV file being imported";s:11:"phpdoc_name";s:8:"csv_name";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:16:"import_csv_lines";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/import_catalogue.php";s:10:"parameters";a:17:{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:8:"csv_data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Data array of CSV imported file's lines";s:11:"phpdoc_name";s:8:"csv_data";}i:2;a:5:{s:4:"name";s:12:"catalog_root";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:46:"Catalogue root ID (null: Not a tree catalogue)";s:11:"phpdoc_name";s:12:"catalog_root";}i:3;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Array of catalogue fields";s:11:"phpdoc_name";s:6:"fields";}i:4;a:5:{s:4:"name";s:10:"categories";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"Array of categories";s:11:"phpdoc_name";s:10:"categories";}i:5;a:5:{s:4:"name";s:16:"csv_field_titles";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Array of csv field titles";s:11:"phpdoc_name";s:16:"csv_field_titles";}i:6;a:5:{s:4:"name";s:9:"key_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Key field";s:11:"phpdoc_name";s:9:"key_field";}i:7;a:5:{s:4:"name";s:12:"new_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"New handling method";s:11:"phpdoc_name";s:12:"new_handling";}i:8;a:5:{s:4:"name";s:15:"delete_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Delete handling method";s:11:"phpdoc_name";s:15:"delete_handling";}i:9;a:5:{s:4:"name";s:15:"update_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Update handling method";s:11:"phpdoc_name";s:15:"update_handling";}i:10;a:5:{s:4:"name";s:11:"matched_ids";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:39:"IDs that are matched are collected here";s:11:"phpdoc_name";s:11:"matched_ids";}i:11;a:5:{s:4:"name";s:11:"notes_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"Notes field";s:11:"phpdoc_name";s:11:"notes_field";}i:12;a:5:{s:4:"name";s:19:"meta_keywords_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"Meta keywords field";s:11:"phpdoc_name";s:19:"meta_keywords_field";}i:13;a:5:{s:4:"name";s:22:"meta_description_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Meta description field";s:11:"phpdoc_name";s:22:"meta_description_field";}i:14;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether rating is allowed for this resource";s:11:"phpdoc_name";s:12:"allow_rating";}i:15;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether comments are allowed for this resource";s:11:"phpdoc_name";s:14:"allow_comments";}i:16;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether trackbacks are allowed for this resource";s:11:"phpdoc_name";s:16:"allow_trackbacks";}}s:4:"name";s:16:"import_csv_lines";s:11:"description";s:69:"Create an entry-id=>value map of uploaded csv data and it's importing";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:65:"Return to propagate [immediate exit] (null: nothing to propagate)";}}}s:4:"name";s:26:"Hook_task_import_catalogue";s:7:"comment";b:1;}s:37:"Hook_task_import_filesystem_downloads";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/tasks/import_filesystem_downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:25:"The category to import to";s:11:"phpdoc_name";s:11:"destination";}i:1;a:5:{s:4:"name";s:11:"server_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:15:"The import path";s:11:"phpdoc_name";s:11:"server_path";}i:2;a:5:{s:4:"name";s:10:"subfolders";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to import subfolders";s:11:"phpdoc_name";s:10:"subfolders";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:35:"filesystem_recursive_downloads_scan";a:6:{s:8:"filename";s:59:"sources/hooks/systems/tasks/import_filesystem_downloads.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:11:"server_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:53:"Filesystem-based path from where we are reading files";s:11:"phpdoc_name";s:11:"server_path";}i:1;a:5:{s:4:"name";s:10:"server_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:46:"URL-based path from where we are reading files";s:11:"phpdoc_name";s:10:"server_url";}i:2;a:5:{s:4:"name";s:8:"dest_cat";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:36:"The destination downloading category";s:11:"phpdoc_name";s:8:"dest_cat";}i:3;a:5:{s:4:"name";s:15:"make_subfolders";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether we add hierarchically (as opposed to a flat category fill)";s:11:"phpdoc_name";s:15:"make_subfolders";}}s:4:"name";s:35:"filesystem_recursive_downloads_scan";s:11:"description";s:42:"Worker function to do a filesystem import.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:25:"Number of downloads added";}}}s:4:"name";s:37:"Hook_task_import_filesystem_downloads";s:7:"comment";b:1;}s:30:"Hook_task_import_ftp_downloads";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/tasks/import_ftp_downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:25:"The category to import to";s:11:"phpdoc_name";s:11:"destination";}i:1;a:5:{s:4:"name";s:10:"server_url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The import URL";s:11:"phpdoc_name";s:10:"server_url";}i:2;a:5:{s:4:"name";s:10:"subfolders";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to import subfolders";s:11:"phpdoc_name";s:10:"subfolders";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:28:"ftp_recursive_downloads_scan";a:6:{s:8:"filename";s:52:"sources/hooks/systems/tasks/import_ftp_downloads.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"conn_id";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:18:"The FTP connection";s:11:"phpdoc_name";s:7:"conn_id";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:54:"The URL that is equivalent to the base path on our FTP";s:11:"phpdoc_name";s:3:"url";}i:2;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:29:"The directory we are scanning";s:11:"phpdoc_name";s:9:"directory";}i:3;a:5:{s:4:"name";s:8:"dest_cat";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:36:"The destination downloading category";s:11:"phpdoc_name";s:8:"dest_cat";}i:4;a:5:{s:4:"name";s:15:"make_subfolders";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether we add hierarchically (as opposed to a flat category fill)";s:11:"phpdoc_name";s:15:"make_subfolders";}}s:4:"name";s:28:"ftp_recursive_downloads_scan";s:11:"description";s:36:"Worker function to do an FTP import.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:25:"Number of downloads added";}}}s:4:"name";s:30:"Hook_task_import_ftp_downloads";s:7:"comment";b:1;}s:27:"Hook_task_import_member_csv";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/tasks/import_member_csv.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"default_password";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:65:"The default password to use (null: skip members with no password)";s:11:"phpdoc_name";s:16:"default_password";}i:1;a:5:{s:4:"name";s:23:"use_temporary_passwords";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to assign temporary passwords";s:11:"phpdoc_name";s:23:"use_temporary_passwords";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:30:"The path of the file to import";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:27:"Hook_task_import_member_csv";s:7:"comment";b:1;}s:39:"Hook_task_import_newsletter_subscribers";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/tasks/import_newsletter_subscribers.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"_language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:28:"The language for subscribers";s:11:"phpdoc_name";s:9:"_language";}i:1;a:5:{s:4:"name";s:13:"newsletter_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The newsletter being imported into";s:11:"phpdoc_name";s:13:"newsletter_id";}i:2;a:5:{s:4:"name";s:6:"_level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The level to import into";s:11:"phpdoc_name";s:6:"_level";}i:3;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:30:"The path of the file to import";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:39:"Hook_task_import_newsletter_subscribers";s:7:"comment";b:1;}s:20:"Hook_task_import_rss";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/tasks/import_rss.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:12:"is_validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether to import as validated";s:11:"phpdoc_name";s:12:"is_validated";}i:1;a:5:{s:4:"name";s:15:"download_images";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether to download remote images";s:11:"phpdoc_name";s:15:"download_images";}i:2;a:5:{s:4:"name";s:14:"to_own_account";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether to import everything to the task initiator's account";s:11:"phpdoc_name";s:14:"to_own_account";}i:3;a:5:{s:4:"name";s:20:"import_blog_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:26:"Whether to import comments";s:11:"phpdoc_name";s:20:"import_blog_comments";}i:4;a:5:{s:4:"name";s:14:"import_to_blog";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:52:"Whether to import everything to blog news categories";s:11:"phpdoc_name";s:14:"import_to_blog";}i:5;a:5:{s:4:"name";s:3:"rss";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:19:"The parsed RSS feed";s:11:"phpdoc_name";s:3:"rss";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:20:"Hook_task_import_rss";s:7:"comment";b:1;}s:26:"Hook_task_import_wordpress";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/import_wordpress.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:12:"is_validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether to import as validated";s:11:"phpdoc_name";s:12:"is_validated";}i:1;a:5:{s:4:"name";s:15:"download_images";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether to download remote images";s:11:"phpdoc_name";s:15:"download_images";}i:2;a:5:{s:4:"name";s:14:"to_own_account";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether to import everything to the task initiator's account";s:11:"phpdoc_name";s:14:"to_own_account";}i:3;a:5:{s:4:"name";s:20:"import_blog_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:26:"Whether to import comments";s:11:"phpdoc_name";s:20:"import_blog_comments";}i:4;a:5:{s:4:"name";s:14:"import_to_blog";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:52:"Whether to import everything to blog news categories";s:11:"phpdoc_name";s:14:"import_to_blog";}i:5;a:5:{s:4:"name";s:22:"import_wordpress_users";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to import Wordpress users";s:11:"phpdoc_name";s:22:"import_wordpress_users";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:26:"Hook_task_import_wordpress";s:7:"comment";b:1;}s:24:"Hook_task_index_download";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/tasks/index_download.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:15:"The download ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The download file URL";s:11:"phpdoc_name";s:3:"url";}i:2;a:5:{s:4:"name";s:17:"original_filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The download filename";s:11:"phpdoc_name";s:17:"original_filename";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:24:"Hook_task_index_download";s:7:"comment";b:1;}s:34:"Hook_task_install_geolocation_data";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/tasks/install_geolocation_data.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:34:"Hook_task_install_geolocation_data";s:7:"comment";b:1;}s:21:"Hook_task_make_backup";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/tasks/make_backup.php";s:10:"parameters";a:3:{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:25:"The filename to backup to";s:11:"phpdoc_name";s:4:"file";}i:1;a:6:{s:4:"name";s:6:"b_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The type of backup to do";s:11:"phpdoc_name";s:6:"b_type";s:3:"set";s:16:"full incremental";}i:2;a:5:{s:4:"name";s:8:"max_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"The maximum size of a file to include in the backup";s:11:"phpdoc_name";s:8:"max_size";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:21:"Hook_task_make_backup";s:7:"comment";b:1;}s:29:"Hook_task_notify_topics_moved";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/tasks/notify_topics_moved.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"or_list";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:45:"An SQL segment of what topics are being moved";s:11:"phpdoc_name";s:7:"or_list";}i:1;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the target forum";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:29:"Hook_task_notify_topics_moved";s:7:"comment";b:1;}s:25:"Hook_task_send_newsletter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/tasks/send_newsletter.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The newsletter message";s:11:"phpdoc_name";s:7:"message";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The newsletter subject";s:11:"phpdoc_name";s:7:"subject";}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:12:"The language";s:11:"phpdoc_name";s:4:"lang";}i:3;a:5:{s:4:"name";s:12:"send_details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:87:"A map describing what newsletters and newsletter levels the newsletter is being sent to";s:11:"phpdoc_name";s:12:"send_details";}i:4;a:5:{s:4:"name";s:9:"html_only";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:35:"Whether to only send in HTML format";s:11:"phpdoc_name";s:9:"html_only";}i:5;a:5:{s:4:"name";s:10:"from_email";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:71:"Override the email address the mail is sent from (blank: staff address)";s:11:"phpdoc_name";s:10:"from_email";}i:6;a:5:{s:4:"name";s:9:"from_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:58:"Override the name the mail is sent from (blank: site name)";s:11:"phpdoc_name";s:9:"from_name";}i:7;a:6:{s:4:"name";s:8:"priority";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The message priority (1=urgent, 3=normal, 5=low)";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:8;a:5:{s:4:"name";s:8:"csv_data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"CSV data of extra subscribers (blank: none). This is in the same Composr newsletter CSV format that we export elsewhere.";s:11:"phpdoc_name";s:8:"csv_data";}i:9;a:5:{s:4:"name";s:13:"mail_template";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The template used to show the email";s:11:"phpdoc_name";s:13:"mail_template";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:25:"Hook_task_send_newsletter";s:7:"comment";b:1;}s:17:"Hook_task_sitemap";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/tasks/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:17:"Hook_task_sitemap";s:7:"comment";b:1;}s:25:"Hook_trackback_catalogues";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/trackback/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:25:"Hook_trackback_catalogues";s:7:"comment";b:1;}s:24:"Hook_trackback_downloads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/trackback/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:24:"Hook_trackback_downloads";s:7:"comment";b:1;}s:21:"Hook_trackback_events";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/trackback/events.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:21:"Hook_trackback_events";s:7:"comment";b:1;}s:21:"Hook_trackback_images";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/trackback/images.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:21:"Hook_trackback_images";s:7:"comment";b:1;}s:19:"Hook_trackback_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/trackback/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:19:"Hook_trackback_news";s:7:"comment";b:1;}s:20:"Hook_trackback_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/trackback/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:20:"Hook_trackback_polls";s:7:"comment";b:1;}s:21:"Hook_trackback_videos";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/trackback/videos.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:21:"Hook_trackback_videos";s:7:"comment";b:1;}s:24:"Field_restriction_loader";a:3:{s:9:"functions";a:4:{s:2:"go";a:5:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:0:{}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:24:"sources/input_filter.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:10:"endElement";a:5:{s:8:"filename";s:24:"sources/input_filter.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:9:"startText";a:5:{s:8:"filename";s:24:"sources/input_filter.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:4:"name";s:24:"Field_restriction_loader";s:7:"comment";b:1;}s:10:"LangFilter";a:3:{s:9:"functions";a:2:{s:12:"compile_time";a:6:{s:8:"filename";s:16:"sources/lang.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:"?string";s:11:"description";s:48:"Language string ID (null: not a language string)";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:6:"string";s:11:"description";s:12:"String value";s:11:"phpdoc_name";s:5:"value";}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:14:"?LANGUAGE_NAME";s:11:"description";s:33:"Language (null: current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:12:"compile_time";s:11:"description";s:25:"Do a compile-time filter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}s:8:"run_time";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Language string ID";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:6:"string";s:11:"description";s:21:"Language string value";s:11:"phpdoc_name";s:5:"value";}i:2;a:5:{s:4:"name";s:4:"flag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Flag value assigned to the string";s:11:"phpdoc_name";s:4:"flag";}i:3;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The parameters";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:8:"run_time";s:11:"description";s:81:"Do a run-time filter. Only happens for strings marked for processing with a flag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}}s:4:"name";s:10:"LangFilter";s:7:"comment";b:1;}s:13:"LangFilter_EN";a:3:{s:9:"functions";a:4:{s:11:"__construct";a:5:{s:8:"filename";s:26:"sources/lang_filter_EN.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:12:"compile_time";a:6:{s:8:"filename";s:26:"sources/lang_filter_EN.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:"?string";s:11:"description";s:48:"Language string ID (null: not a language string)";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:6:"string";s:11:"description";s:12:"String value";s:11:"phpdoc_name";s:5:"value";}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:14:"?LANGUAGE_NAME";s:11:"description";s:33:"Language (null: current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:12:"compile_time";s:11:"description";s:25:"Do a compile-time filter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}s:8:"run_time";a:6:{s:8:"filename";s:26:"sources/lang_filter_EN.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Language string ID";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:6:"string";s:11:"description";s:21:"Language string value";s:11:"phpdoc_name";s:5:"value";}i:2;a:5:{s:4:"name";s:4:"flag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Flag value assigned to the string";s:11:"phpdoc_name";s:4:"flag";}i:3;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The parameters";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:8:"run_time";s:11:"description";s:81:"Do a run-time filter. Only happens for strings marked for processing with a flag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}s:10:"filter_css";a:6:{s:8:"filename";s:26:"sources/lang_filter_EN.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:24:"The name of the CSS file";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The CSS code";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:10:"filter_css";s:11:"description";s:41:"Do a compile-time filter of the CSS code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The filtered CSS code";}}}s:4:"name";s:13:"LangFilter_EN";s:7:"comment";b:1;}s:28:"Media_renderer_with_fallback";a:3:{s:9:"functions";a:1:{s:15:"fallback_render";a:6:{s:8:"filename";s:26:"sources/media_renderer.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:67:"Whether there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:7:{s:4:"name";s:9:"click_url";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:53:"URL to route clicks through to (null: no special URL)";s:11:"phpdoc_name";s:9:"click_url";}}s:4:"name";s:15:"fallback_render";s:11:"description";s:64:"If we are rendering in low-fi, result to simple image fall-back.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:38:"Rendered version (null: do not render)";}}}s:4:"name";s:28:"Media_renderer_with_fallback";s:7:"comment";b:1;}s:23:"Notification_dispatcher";a:3:{s:9:"functions";a:2:{s:11:"__construct";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The notification code to use";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:13:"code_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:142:"The category within the notification code (null: none). If it is to have $store_in_staff_messaging_system, it must have the format _";s:11:"phpdoc_name";s:13:"code_category";}i:2;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Message subject (in Comcode)";s:11:"phpdoc_name";s:7:"subject";}i:3;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"Message body (in Comcode)";s:11:"phpdoc_name";s:7:"message";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:60:"List of enabled members to limit sending to (null: everyone)";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:14:"from_member_id";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:126:"The member ID doing the sending. Either a MEMBER or a negative number (e.g. A_FROM_SYSTEM_UNPRIVILEGED) (null: current member)";s:11:"phpdoc_name";s:14:"from_member_id";}i:6;a:6:{s:4:"name";s:8:"priority";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The message priority (1=urgent, 3=normal, 5=low)";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:7;a:5:{s:4:"name";s:31:"store_in_staff_messaging_system";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to create a topic for discussion (ignored if the staff_messaging addon not installed)";s:11:"phpdoc_name";s:31:"store_in_staff_messaging_system";}i:8;a:5:{s:4:"name";s:5:"no_cc";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to NOT CC to the CC address";s:11:"phpdoc_name";s:5:"no_cc";}i:9;a:5:{s:4:"name";s:32:"no_notify_for__notification_code";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:10;a:5:{s:4:"name";s:28:"no_notify_for__code_category";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:11;a:7:{s:4:"name";s:14:"subject_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:85:"Only relevant if $store_in_staff_messaging_system is true: subject prefix for storage";s:11:"phpdoc_name";s:14:"subject_prefix";}i:12;a:7:{s:4:"name";s:14:"subject_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:85:"Only relevant if $store_in_staff_messaging_system is true: subject suffix for storage";s:11:"phpdoc_name";s:14:"subject_suffix";}i:13;a:7:{s:4:"name";s:11:"body_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:82:"Only relevant if $store_in_staff_messaging_system is true: body prefix for storage";s:11:"phpdoc_name";s:11:"body_prefix";}i:14;a:7:{s:4:"name";s:11:"body_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:82:"Only relevant if $store_in_staff_messaging_system is true: body suffix for storage";s:11:"phpdoc_name";s:11:"body_suffix";}i:15;a:7:{s:4:"name";s:11:"attachments";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:80:"A list of attachments (each attachment being a map, path=>filename) (null: none)";s:11:"phpdoc_name";s:11:"attachments";}i:16;a:7:{s:4:"name";s:13:"use_real_from";s:7:"default";s:13:"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 we will make a "reply to" direct -- we only do this if we're allowed to disclose email addresses for this particular notification type (i.e. if it's a direct contact)";s:11:"phpdoc_name";s:13:"use_real_from";}}s:4:"name";s:11:"__construct";s:11:"description";s:34:"Construct notification dispatcher.";s:5:"flags";a:0:{}}s:8:"dispatch";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"dispatch";s:11:"description";s:43:"Send out a notification to members enabled.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Notification_dispatcher";s:7:"comment";b:1;}s:17:"Hook_Notification";a:3:{s:9:"functions";a:16:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:19:"supports_categories";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:250:"Standard function to create the standardised category tree. This base version will do it based on seeing what is already being monitored, i.e. so you can unmonitor them. It assumes monitoring is initially set from the frontend via the monitor button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:21:"_create_category_tree";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:14:"for_any_member";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:141:"Whether to list anything monitored by any member (useful if you are calling this because you can't naturally enumerate what can be monitored)";s:11:"phpdoc_name";s:14:"for_any_member";}}s:4:"name";s:21:"_create_category_tree";s:11:"description";s:250:"Standard function to create the standardised category tree. This base version will do it based on seeing what is already being monitored, i.e. so you can unmonitor them. It assumes monitoring is initially set from the frontend via the monitor button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:16:"allowed_settings";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:24:"get_default_auto_setting";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:24:"get_default_auto_setting";s:11:"description";s:147:"Find the setting that members have for a notification code if they have done some action triggering automatic setting (e.g. posted within a topic).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Automatic setting";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:44:"_all_members_who_have_enabled_with_privilege";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"to_filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"Members from main query (we'll filter them)";s:11:"phpdoc_name";s:9:"to_filter";}i:1;a:5:{s:4:"name";s:9:"privilege";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The privilege";s:11:"phpdoc_name";s:9:"privilege";}i:2;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:3;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:6;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:44:"_all_members_who_have_enabled_with_privilege";s:11:"description";s:58:"Further filter results from _all_members_who_have_enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:46:"_all_members_who_have_enabled_with_zone_access";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"to_filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"Members from main query (we'll filter them)";s:11:"phpdoc_name";s:9:"to_filter";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The zone";s:11:"phpdoc_name";s:4:"zone";}i:2;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:3;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:6;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:46:"_all_members_who_have_enabled_with_zone_access";s:11:"description";s:58:"Further filter results from _all_members_who_have_enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:46:"_all_members_who_have_enabled_with_page_access";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"to_filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"Members from main query (we'll filter them)";s:11:"phpdoc_name";s:9:"to_filter";}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:8:"The page";s:11:"phpdoc_name";s:4:"page";}i:2;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:3;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:6;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:46:"_all_members_who_have_enabled_with_page_access";s:11:"description";s:58:"Further filter results from _all_members_who_have_enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:50:"_all_members_who_have_enabled_with_category_access";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"to_filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"Members from main query (we'll filter them)";s:11:"phpdoc_name";s:9:"to_filter";}i:1;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The category permission type";s:11:"phpdoc_name";s:8:"category";}i:2;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:3;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:6;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:50:"_all_members_who_have_enabled_with_category_access";s:11:"description";s:58:"Further filter results from _all_members_who_have_enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:17:"Whether they have";}}s:29:"_all_members_who_have_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:2;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:3;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}i:5;a:7:{s:4:"name";s:13:"catch_all_too";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:74:"Whether to find members who are subscribed regardless of notification code";s:11:"phpdoc_name";s:13:"catch_all_too";}}s:4:"name";s:29:"_all_members_who_have_enabled";s:11:"description";s:180:"Get a list of members who have enabled this notification (i.e. have chosen to or are defaulted to).(No pagination supported, as assumed there are only a small set of members here.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:10:"_is_member";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:10:"_is_member";s:11:"description";s:102:"Find whether someone has permission to view any notifications (yes) and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:17:"Hook_Notification";s:7:"comment";b:1;}s:24:"Hook_notification__Staff";a:3:{s:9:"functions";a:6:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:27:"_all_staff_who_have_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:2;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:3;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:27:"_all_staff_who_have_enabled";s:11:"description";s:128:"Get a list of staff members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:9:"_is_staff";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:98:"Find whether someone has permission to view staff notifications and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:24:"Hook_notification__Staff";s:7:"comment";b:1;}s:27:"Persistent_caching_apccache";a:3:{s:9:"functions";a:5:{s:0:"";a:6:{s:8:"filename";s:34:"sources/persistent_caching/apc.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:34:"sources/persistent_caching/apc.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:34:"sources/persistent_caching/apc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:34:"sources/persistent_caching/apc.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:34:"sources/persistent_caching/apc.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:27:"Persistent_caching_apccache";s:7:"comment";b:1;}s:36:"Persistent_caching_eacceleratorcache";a:3:{s:9:"functions";a:5:{s:0:"";a:6:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:36:"Persistent_caching_eacceleratorcache";s:7:"comment";b:1;}s:28:"Persistent_caching_filecache";a:3:{s:9:"functions";a:6:{s:11:"__construct";a:5:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:17:"load_objects_list";a:6:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"load_objects_list";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Persistent_caching_filecache";s:7:"comment";b:1;}s:27:"Persistent_caching_memcache";a:3:{s:9:"functions";a:6:{s:11:"__construct";a:5:{s:8:"filename";s:39:"sources/persistent_caching/memcache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:0:"";a:6:{s:8:"filename";s:39:"sources/persistent_caching/memcache.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:39:"sources/persistent_caching/memcache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:39:"sources/persistent_caching/memcache.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:39:"sources/persistent_caching/memcache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:39:"sources/persistent_caching/memcache.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:27:"Persistent_caching_memcache";s:7:"comment";b:1;}s:28:"Persistent_caching_memcached";a:3:{s:9:"functions";a:6:{s:11:"__construct";a:5:{s:8:"filename";s:40:"sources/persistent_caching/memcached.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:0:"";a:6:{s:8:"filename";s:40:"sources/persistent_caching/memcached.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:40:"sources/persistent_caching/memcached.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:40:"sources/persistent_caching/memcached.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:40:"sources/persistent_caching/memcached.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:40:"sources/persistent_caching/memcached.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Persistent_caching_memcached";s:7:"comment";b:1;}s:27:"Persistent_caching_wincache";a:3:{s:9:"functions";a:5:{s:0:"";a:6:{s:8:"filename";s:39:"sources/persistent_caching/wincache.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:39:"sources/persistent_caching/wincache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:39:"sources/persistent_caching/wincache.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:39:"sources/persistent_caching/wincache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:39:"sources/persistent_caching/wincache.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:27:"Persistent_caching_wincache";s:7:"comment";b:1;}s:25:"Persistent_caching_xcache";a:3:{s:9:"functions";a:5:{s:0:"";a:6:{s:8:"filename";s:37:"sources/persistent_caching/xcache.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:37:"sources/persistent_caching/xcache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:37:"sources/persistent_caching/xcache.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:37:"sources/persistent_caching/xcache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:37:"sources/persistent_caching/xcache.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Persistent_caching_xcache";s:7:"comment";b:1;}s:16:"Resource_fs_base";a:3:{s:9:"functions";a:76:{s:13:"_get_cma_info";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:13:"_get_cma_info";s:11:"description";s:62:"Get the file resource info for this Commandr-fs resource hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"object";s:11:"description";s:10:"The object";}}s:14:"is_folder_type";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:14:"is_folder_type";s:11:"description";s:49:"Find whether a resource type is of a folder-type.";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:"is_file_type";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:12:"is_file_type";s:11:"description";s:47:"Find whether a resource type is of a file-type.";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:10:"_is_active";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"can_accept_filetype";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"filetype";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The file type (no file extension)";s:11:"phpdoc_name";s:8:"filetype";}}s:4:"name";s:19:"can_accept_filetype";s:11:"description";s:62:"Whether the filesystem hook can handle a particular file type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:35:"List of our resource types that can";}}s:30:"_has_parent_child_relationship";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"above";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"Folder resource type (null: root)";s:11:"phpdoc_name";s:5:"above";}i:1;a:5:{s:4:"name";s:5:"under";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"Resource type (may be file or folder)";s:11:"phpdoc_name";s:5:"under";}}s:4:"name";s:30:"_has_parent_child_relationship";s:11:"description";s:111:"Find whether a kind of resource handled by this hook (folder or file) can be under a particular kind of folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:111:"A map: The parent referencing field, the table it is in, and the ID field of that table (null: cannot be under)";}}s:15:"file_load__flat";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:15:"file_load__flat";s:11:"description";s:100:"Load function for resource-fs (for files). Finds the data for some resource from a resource-fs file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Resource data (false: error)";}}s:17:"folder_load__flat";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:17:"folder_load__flat";s:11:"description";s:104:"Load function for resource-fs (for folders). Finds the data for some resource from a resource-fs folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Resource data (false: error)";}}s:15:"file_save__flat";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Resource data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:15:"file_save__flat";s:11:"description";s:99:"Save function for resource-fs (for files). Parses the data for some resource to a resource-fs file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:17:"folder_save__flat";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Resource data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:17:"folder_save__flat";s:11:"description";s:103:"Save function for resource-fs (for folders). Parses the data for some resource to a resource-fs folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:18:"_file_magic_filter";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}i:3;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:18:"_file_magic_filter";s:11:"description";s:127:"Reinterpret the input of a file, into a way we can understand it to add/edit. Hooks may override this with special import code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:154:"A pair: the resource label, Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";}}s:20:"_folder_magic_filter";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:20:"_folder_magic_filter";s:11:"description";s:129:"Reinterpret the input of a folder, into a way we can understand it to add/edit. Hooks may override this with special import code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:154:"A pair: the resource label, Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";}}s:27:"file_convert_id_to_filename";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:27:"file_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The filename (null: could not find)";}}s:29:"folder_convert_id_to_filename";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:29:"folder_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The filename (null: could not find)";}}s:27:"file_convert_filename_to_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:27:"file_convert_filename_to_id";s:11:"description";s:112:"Get the resource ID for a filename (of file). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:65:"A pair: The resource type, the resource ID (null: could not find)";}}s:29:"folder_convert_filename_to_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:29:"folder_convert_filename_to_id";s:11:"description";s:114:"Get the resource ID for a filename (of folder). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"A pair: The resource type, the resource ID";}}s:21:"_default_property_str";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:21:"_default_property_str";s:11:"description";s:45:"Find a default property, defaulting to blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:28:"The value (null: null value)";}}s:26:"_default_property_str_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:26:"_default_property_str_null";s:11:"description";s:44:"Find a default property, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:28:"The value (null: null value)";}}s:21:"_default_property_int";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:21:"_default_property_int";s:11:"description";s:50:"Find an integer default property, defaulting to 0.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:26:"_default_property_int_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:26:"_default_property_int_null";s:11:"description";s:44:"Find a default property, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:17:"_integer_category";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:45:"The category value (blank: root) (null: root)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:17:"_integer_category";s:11:"description";s:68:"Convert a category to an integer, defaulting to null if it is blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:25:"The category (null: root)";}}s:29:"_default_property_int_modeavg";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}i:2;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The table to average within";s:11:"phpdoc_name";s:5:"table";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The last-resort default";s:11:"phpdoc_name";s:7:"default";}i:4;a:7:{s:4:"name";s:11:"db_property";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:47:"The database property (null: same as $property)";s:11:"phpdoc_name";s:11:"db_property";}}s:4:"name";s:29:"_default_property_int_modeavg";s:11:"description";s:118:"Find a default property, defaulting to the average of what is there already, or the given default if really necessary.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"The value";}}s:27:"_default_property_time_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:27:"_default_property_time_null";s:11:"description";s:60:"Find a default property for a timestamp, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:22:"_default_property_time";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:22:"_default_property_time";s:11:"description";s:68:"Find a default property for a timestamp, defaulting to current time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"The value";}}s:29:"_default_property_member_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:29:"_default_property_member_null";s:11:"description";s:57:"Find a default property for a member, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:24:"_default_property_member";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:24:"_default_property_member";s:11:"description";s:37:"Find a default property for a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:28:"_default_property_group_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:28:"_default_property_group_null";s:11:"description";s:60:"Find a default property for a usergroup, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:23:"_default_property_group";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:23:"_default_property_group";s:11:"description";s:40:"Find a default property for a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:25:"_default_property_urlpath";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}i:2;a:7:{s:4:"name";s:16:"ignore_conflicts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether to ignore conflicts with existing files (=edit op, basically)";s:11:"phpdoc_name";s:16:"ignore_conflicts";}}s:4:"name";s:25:"_default_property_urlpath";s:11:"description";s:34:"Find a default property for a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The value";}}s:34:"_default_property_foreign_key_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"_table_referenced";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The table the key is to";s:11:"phpdoc_name";s:17:"_table_referenced";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:34:"_default_property_foreign_key_null";s:11:"description";s:62:"Find a default property for a foreign key, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:28:"The value (null: null value)";}}s:29:"_default_property_foreign_key";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"_table_referenced";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The table the key is to";s:11:"phpdoc_name";s:17:"_table_referenced";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:29:"_default_property_foreign_key";s:11:"description";s:42:"Find a default property for a foreign key.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The value";}}s:34:"_default_property_resource_id_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:34:"_default_property_resource_id_null";s:11:"description";s:59:"Find a default property for a resource, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:28:"The value (null: null value)";}}s:29:"_default_property_resource_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:29:"_default_property_resource_id";s:11:"description";s:39:"Find a default property for a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The value";}}s:23:"_create_name_from_label";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:23:"_create_name_from_label";s:11:"description";s:25:"Turn a label into a name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:20:"_log_if_save_matchup";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"The resource type (null: unknown)";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:45:"The resource ID (false: was not added/edited)";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:3;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:20:"_log_if_save_matchup";s:11:"description";s:83:"Helper function: detect if a resource did not save all the properties it was given.";s:5:"flags";a:0:{}}s:6:"search";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:7:{s:4:"name";s:12:"full_subpath";s:7:"default";s:13:"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 to include the full subpath";s:11:"phpdoc_name";s:12:"full_subpath";}}s:4:"name";s:6:"search";s:11:"description";s:42:"Find the foldername/subpath to a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:40:"The foldername/subpath (null: not found)";}}s:25:"convert_label_to_filename";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:5:"label";}i:1;a:5:{s:4:"name";s:7:"subpath";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:117:"The path (blank: root / not applicable). It may end in "/*" if you want to look for a match under a certain directory";s:11:"phpdoc_name";s:7:"subpath";}i:2;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:18:"must_already_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:38:"Whether the content must already exist";s:11:"phpdoc_name";s:18:"must_already_exist";}i:4;a:7:{s:4:"name";s:16:"use_guid_for_new";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:95:"GUID to auto-create with (null: either not auto-creating, or not specifying the GUID if we are)";s:11:"phpdoc_name";s:16:"use_guid_for_new";}}s:4:"name";s:25:"convert_label_to_filename";s:11:"description";s:128:"Convert a label to a filename, possibly with auto-creating if needed. This is useful for the Composr-side resource-agnostic API.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:30:"The filename (null: not found)";}}s:19:"convert_label_to_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"_label";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:6:"_label";}i:1;a:5:{s:4:"name";s:7:"subpath";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:117:"The path (blank: root / not applicable). It may end in "/*" if you want to look for a match under a certain directory";s:11:"phpdoc_name";s:7:"subpath";}i:2;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:18:"must_already_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:38:"Whether the content must already exist";s:11:"phpdoc_name";s:18:"must_already_exist";}i:4;a:7:{s:4:"name";s:16:"use_guid_for_new";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:95:"GUID to auto-create with (null: either not auto-creating, or not specifying the GUID if we are)";s:11:"phpdoc_name";s:16:"use_guid_for_new";}}s:4:"name";s:19:"convert_label_to_id";s:11:"description";s:123:"Convert a label to an ID, possibly with auto-creating if needed. This is useful for the Composr-side resource-agnostic API.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:24:"The ID (null: not found)";}}s:22:"convert_id_to_filename";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:22:"convert_id_to_filename";s:11:"description";s:122:"Get the filename for a resource ID (of file or folder). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:30:"The filename (null: not found)";}}s:22:"convert_filename_to_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:22:"convert_filename_to_id";s:11:"description";s:122:"Get the resource ID for a filename (of file or folder). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:65:"A pair: The resource type, the resource ID (null: could not find)";}}s:13:"resource_save";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:5:"label";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:3;a:7:{s:4:"name";s:10:"properties";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:23:"Properties (null: none)";s:11:"phpdoc_name";s:10:"properties";}i:4;a:7:{s:4:"name";s:15:"search_label_as";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:126:"Whether to look for existing records using $filename as a label and this resource type (null: $filename is a strict file name)";s:11:"phpdoc_name";s:15:"search_label_as";}i:5;a:7:{s:4:"name";s:11:"search_path";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:50:"Search path (null: the same as the path saving at)";s:11:"phpdoc_name";s:11:"search_path";}}s:4:"name";s:13:"resource_save";s:11:"description";s:121:"Save function for resource-fs. Parses the data for some resource to a resource-fs JSON file. Wraps file_save/folder_save.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:12:"resource_add";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:5:"label";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:3;a:7:{s:4:"name";s:10:"properties";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:139:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields) (null: none)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:12:"resource_add";s:11:"description";s:82:"Adds some resource with the given label and properties. Wraps file_add/folder_add.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"resource_load";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"resource_load";s:11:"description";s:68:"Finds the properties for some resource. Wraps file_load/folder_load.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:13:"resource_edit";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:3;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:4;a:7:{s:4:"name";s:13:"explicit_move";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Whether we are definitely moving (as opposed to possible having it in multiple positions)";s:11:"phpdoc_name";s:13:"explicit_move";}}s:4:"name";s:13:"resource_edit";s:11:"description";s:72:"Edits the resource to the given properties. Wraps file_edit/folder_edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:15:"resource_delete";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:15:"resource_delete";s:11:"description";s:54:"Deletes the resource. Wraps file_delete/folder_delete.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:21:"reset_resource_access";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:21:"reset_resource_access";s:11:"description";s:61:"Reset resource privileges on the resource for all usergroups.";s:5:"flags";a:0:{}}s:19:"set_resource_access";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}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:38:"A mapping from group ID to view access";s:11:"phpdoc_name";s:6:"groups";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"set_resource_access";s:11:"description";s:41:"Set resource view access on the resource.";s:5:"flags";a:0:{}}s:19:"get_resource_access";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_resource_access";s:11:"description";s:41:"Get resource view access on the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A mapping from group ID to view access";}}s:28:"set_resource_access__members";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:7:"members";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"A mapping from member ID to view access";s:11:"phpdoc_name";s:7:"members";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:28:"set_resource_access__members";s:11:"description";s:41:"Set resource view access on the resource.";s:5:"flags";a:0:{}}s:28:"get_resource_access__members";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:28:"get_resource_access__members";s:11:"description";s:41:"Get resource view access on the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A mapping from member ID to view access";}}s:25:"reset_resource_privileges";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:25:"reset_resource_privileges";s:11:"description";s:61:"Reset resource privileges on the resource for all usergroups.";s:5:"flags";a:0:{}}s:32:"_compute_privilege_preset_scheme";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:32:"_compute_privilege_preset_scheme";s:11:"description";s:62:"Work out what a privilege preset means for a kind of resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:101:"A mapping from privilege to minimum preset level required for privilege activation (null: unworkable)";}}s:35:"set_resource_privileges_from_preset";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:13:"group_presets";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:90:"A mapping from group ID to preset value. Preset values are 0 (read only) to 3 (moderation)";s:11:"phpdoc_name";s:13:"group_presets";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:35:"set_resource_privileges_from_preset";s:11:"description";s:54:"Set resource privileges from a preset on the resource.";s:5:"flags";a:0:{}}s:23:"set_resource_privileges";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:14:"group_settings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:57:"A map between group ID, and a map of privilege to setting";s:11:"phpdoc_name";s:14:"group_settings";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:23:"set_resource_privileges";s:11:"description";s:40:"Set resource privileges on the resource.";s:5:"flags";a:0:{}}s:23:"get_resource_privileges";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:23:"get_resource_privileges";s:11:"description";s:45:"Get the resource privileges for the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A map between group ID, and a map of privilege to setting";}}s:44:"set_resource_privileges_from_preset__members";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:14:"member_presets";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:91:"A mapping from member ID to preset value. Preset values are 0 (read only) to 3 (moderation)";s:11:"phpdoc_name";s:14:"member_presets";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:44:"set_resource_privileges_from_preset__members";s:11:"description";s:93:"Set resource privileges from a preset so that a member has custom privileges on the resource.";s:5:"flags";a:0:{}}s:32:"set_resource_privileges__members";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:15:"member_settings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:58:"A map between member ID, and a map of privilege to setting";s:11:"phpdoc_name";s:15:"member_settings";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:32:"set_resource_privileges__members";s:11:"description";s:81:"Set a resource privilege so that a member has a custom privilege on the resource.";s:5:"flags";a:0:{}}s:32:"get_resource_privileges__members";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:32:"get_resource_privileges__members";s:11:"description";s:88:"Get the resource privileges for all members that have custom privileges on the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"A map between member ID, and a map of privilege to setting";}}s:14:"file_load_json";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:14:"file_load_json";s:11:"description";s:105:"Load function for resource-fs (for files). Finds the data for some resource from a resource-fs JSON file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Resource data (false: error)";}}s:16:"folder_load_json";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:16:"folder_load_json";s:11:"description";s:109:"Load function for resource-fs (for folders). Finds the data for some resource from a resource-fs JSON folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Resource data (false: error)";}}s:14:"file_save_json";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Resource data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"file_save_json";s:11:"description";s:104:"Save function for resource-fs (for files). Parses the data for some resource to a resource-fs JSON file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_save";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"The path to save at (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:15:"search_label_as";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:126:"Whether to look for existing records using $filename as a label and this resource type (null: $filename is a strict file name)";s:11:"phpdoc_name";s:15:"search_label_as";}i:4;a:7:{s:4:"name";s:11:"search_path";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:50:"Search path (null: the same as the path saving at)";s:11:"phpdoc_name";s:11:"search_path";}}s:4:"name";s:9:"file_save";s:11:"description";s:42:"Save function for resource-fs (for files).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:16:"folder_save_json";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Resource data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:16:"folder_save_json";s:11:"description";s:108:"Save function for resource-fs (for folders). Parses the data for some resource to a resource-fs JSON folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"folder_save";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:15:"search_label_as";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:126:"Whether to look for existing records using $filename as a label and this resource type (null: $filename is a strict file name)";s:11:"phpdoc_name";s:15:"search_label_as";}i:4;a:7:{s:4:"name";s:11:"search_path";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:50:"Search path (null: the same as the path saving at)";s:11:"phpdoc_name";s:11:"search_path";}}s:4:"name";s:11:"folder_save";s:11:"description";s:44:"Save function for resource-fs (for folders).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:21:"_resource_load_extend";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:21:"Details of properties";s:11:"phpdoc_name";s:10:"properties";}i:3;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:4;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:21:"_resource_load_extend";s:11:"description";s:88:"Extend a resource with extra properties from standard features a resource type supports.";s:5:"flags";a:0:{}}s:25:"_resource_save_extend_pre";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:45:"Details of properties (returned by reference)";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:3;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:25:"_resource_save_extend_pre";s:11:"description";s:80:"Modify standard properties as may be needed by implications of extra properties.";s:5:"flags";a:0:{}}s:21:"_resource_save_extend";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:3;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:5:"label";}i:4;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Details of properties";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:21:"_resource_save_extend";s:11:"description";s:70:"Save extra properties from standard features a resource type supports.";s:5:"flags";a:0:{}}s:35:"_custom_fields_enumerate_properties";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:17:"The resource type";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:35:"_custom_fields_enumerate_properties";s:11:"description";s:34:"Find details of custom properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"Details of properties";}}s:19:"_custom_fields_load";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:17:"The resource type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_custom_fields_load";s:11:"description";s:23:"Load custom properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Loaded properties";}}s:19:"_custom_fields_save";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{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:17:"The resource type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:3;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:5:"label";}i:4;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"Properties to save";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:19:"_custom_fields_save";s:11:"description";s:23:"Save custom properties.";s:5:"flags";a:0:{}}s:7:"listing";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for Commandr-fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for Commandr-fs hooks.";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:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for Commandr-fs hooks.";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:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for Commandr-fs hooks.";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:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for Commandr-fs hooks.";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:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for Commandr-fs hooks.";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:16:"Resource_fs_base";s:7:"comment";b:1;}s:22:"RevisionEngineDatabase";a:3:{s:9:"functions";a:12:{s:11:"__construct";a:5:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:10:"is_log_mod";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether the logs are done via the forum moderator's log.";s:11:"phpdoc_name";s:10:"is_log_mod";}i:1;a:7:{s:4:"name";s:2:"db";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:78:"Database connection to use (null: work out using norms for $is_log_mod value).";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:7:"enabled";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"check_privilege";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to check privileges.";s:11:"phpdoc_name";s:15:"check_privilege";}}s:4:"name";s:7:"enabled";s:11:"description";s:56:"Find whether revisions are enabled for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether revisions are enabled.";}}s:12:"add_revision";a:5:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Resource type.";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:113:"Category ID (e.g. a page or a topic). May be the same as $resource_id if the revision is for the category itself.";s:11:"phpdoc_name";s:11:"category_id";}i:3;a:5:{s:4:"name";s:14:"original_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:102:"Title before revision (of the resource being edited, not the category) (blank: very common, no title).";s:11:"phpdoc_name";s:14:"original_title";}i:4;a:5:{s:4:"name";s:13:"original_text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Text before revision.";s:11:"phpdoc_name";s:13:"original_text";}i:5;a:5:{s:4:"name";s:22:"original_content_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:99:"Owner of the content (gathered so if deleted we can still see some meta context for this resource).";s:11:"phpdoc_name";s:22:"original_content_owner";}i:6;a:5:{s:4:"name";s:26:"original_content_timestamp";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:112:"Original timestamp of the content (gathered so if deleted we can still see some meta context for this resource).";s:11:"phpdoc_name";s:26:"original_content_timestamp";}i:7;a:5:{s:4:"name";s:6:"log_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:72:"Log ID (null: no ID, meaning actually we cannot save a revision at all).";s:11:"phpdoc_name";s:6:"log_id";}}s:4:"name";s:12:"add_revision";s:11:"description";s:15:"Add a revision.";s:5:"flags";a:0:{}}s:15:"delete_revision";a:5:{s:8:"filename";s:37:"sources/revisions_engine_database.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:12:"Revision ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"delete_revision";s:11:"description";s:29:"Delete a particular revision.";s:5:"flags";a:0:{}}s:14:"find_revisions";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:8:{i:0;a:7:{s:4:"name";s:14:"resource_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:41:"Allowed resource types (null: no filter).";s:11:"phpdoc_name";s:14:"resource_types";}i:1;a:7:{s:4:"name";s:11:"resource_id";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:30:"Resource ID (null: no filter).";s:11:"phpdoc_name";s:11:"resource_id";}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:7:"?string";s:11:"description";s:30:"Category ID (null: no filter).";s:11:"phpdoc_name";s:11:"category_id";}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:28:"Member ID (null: no filter).";s:11:"phpdoc_name";s:9:"member_id";}i:4;a:7:{s:4:"name";s:11:"revision_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 for a particular revision to retrieve (null: no filter).";s:11:"phpdoc_name";s:11:"revision_id";}i:5;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:8:"?integer";s:11:"description";s:35:"Maximum to return (null: no limit).";s:11:"phpdoc_name";s:3:"max";}i:6;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:13:"Start offset.";s:11:"phpdoc_name";s:5:"start";}i:7;a:7:{s:4:"name";s:12:"limited_data";s:7:"default";s:13:"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 to only collect IDs and other simple low-bandwidth data.";s:11:"phpdoc_name";s:12:"limited_data";}}s:4:"name";s:14:"find_revisions";s:11:"description";s:32:"Retrieve revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"List of revision maps.";}}s:13:"has_revisions";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"resource_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Allowed resource types.";s:11:"phpdoc_name";s:14:"resource_types";}i:1;a:7:{s:4:"name";s:11:"resource_id";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:30:"Resource ID (null: no filter).";s:11:"phpdoc_name";s:11:"resource_id";}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:7:"?string";s:11:"description";s:30:"Category ID (null: no filter).";s:11:"phpdoc_name";s:11:"category_id";}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:28:"Member ID (null: no filter).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"has_revisions";s:11:"description";s:41:"Find if there are revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether there are revisions.";}}s:15:"total_revisions";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"resource_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Allowed resource types.";s:11:"phpdoc_name";s:14:"resource_types";}i:1;a:7:{s:4:"name";s:11:"resource_id";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:30:"Resource ID (null: no filter).";s:11:"phpdoc_name";s:11:"resource_id";}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:7:"?string";s:11:"description";s:30:"Category ID (null: no filter).";s:11:"phpdoc_name";s:11:"category_id";}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:28:"Member ID (null: no filter).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:15:"total_revisions";s:11:"description";s:38:"Find number of revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Total revisions.";}}s:21:"find_revision_for_log";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"log_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:26:"The action log entry's ID.";s:11:"phpdoc_name";s:6:"log_id";}}s:4:"name";s:21:"find_revision_for_log";s:11:"description";s:53:"Retrieve revisions for a particular action log entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"A revision map (null: not found).";}}s:32:"find_most_recent_category_change";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Resource type.";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Category ID.";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:32:"find_most_recent_category_change";s:11:"description";s:40:"Find most recent revision in a category.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:39:"Last revision (0 if no revisions ever).";}}s:26:"recategorise_old_revisions";a:5:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Resource type.";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:15:"new_category_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Category ID.";s:11:"phpdoc_name";s:15:"new_category_id";}}s:4:"name";s:26:"recategorise_old_revisions";s:11:"description";s:154:"Move some revisions to a different category.Typically this is when we are moving posts and we want the revisions to show up for the new topic they are in.";s:5:"flags";a:0:{}}s:19:"ui_browse_revisions";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:29:"Screen title (null: default).";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:14:"_fields_titles";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:36:"List of field titles (i.e. columns).";s:11:"phpdoc_name";s:14:"_fields_titles";}i:2;a:5:{s:4:"name";s:14:"resource_types";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:41:"List of resource types (null: no filter).";s:11:"phpdoc_name";s:14:"resource_types";}i:3;a:5:{s:4:"name";s:12:"row_renderer";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:32:"Callback for rendering out rows.";s:11:"phpdoc_name";s:12:"row_renderer";}i:4;a:7:{s:4:"name";s:11:"resource_id";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:30:"Resource ID (null: no filter).";s:11:"phpdoc_name";s:11:"resource_id";}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:7:"?string";s:11:"description";s:30:"Category ID (null: no filter).";s:11:"phpdoc_name";s:11:"category_id";}i:6;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:28:"Member ID (null: no filter).";s:11:"phpdoc_name";s:9:"member_id";}i:7;a:7:{s:4:"name";s:24:"category_permission_type";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:43:"Category permission type (null: no checks).";s:11:"phpdoc_name";s:24:"category_permission_type";}i:8;a:7:{s:4:"name";s:19:"include_filter_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:39:"Include a form for filtering revisions.";s:11:"phpdoc_name";s:19:"include_filter_form";}}s:4:"name";s:19:"ui_browse_revisions";s:11:"description";s:325:"Show a revisions browsing UI for particular resource types.Intended as a simple front-end browsing UI. Full details are in action-log, and restoration details are via ui_revision_undoer.Does not check permissions, assumes only low-privilege data is revealed.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:12:"Revision UI.";}}s:18:"ui_revision_undoer";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Resource type.";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:52:"Current resource text (may be altered by reference).";s:11:"phpdoc_name";s:4:"text";}i:3;a:5:{s:4:"name";s:15:"revision_loaded";s:3:"ref";b:1;s:4:"type";s:8:"?boolean";s:11:"description";s:73:"Whether a revision was loaded, passed by reference (null: initial value).";s:11:"phpdoc_name";s:15:"revision_loaded";}}s:4:"name";s:18:"ui_revision_undoer";s:11:"description";s:96:"Browse revisions to undo one.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:3:"UI.";}}}s:4:"name";s:22:"RevisionEngineDatabase";s:7:"comment";b:1;}s:19:"RevisionEngineFiles";a:3:{s:9:"functions";a:8:{s:7:"enabled";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"check_privilege";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to check privileges.";s:11:"phpdoc_name";s:15:"check_privilege";}}s:4:"name";s:7:"enabled";s:11:"description";s:56:"Find whether revisions are enabled for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether revisions are enabled.";}}s:12:"add_revision";a:5:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:59:"ID of what is being revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}i:3;a:5:{s:4:"name";s:13:"original_text";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:48:"Text before revision (null: work out from disk).";s:11:"phpdoc_name";s:13:"original_text";}i:4;a:5:{s:4:"name";s:18:"original_timestamp";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:77:"The creation timestamp for what was just replaced (null: work out from disk).";s:11:"phpdoc_name";s:18:"original_timestamp";}}s:4:"name";s:12:"add_revision";s:11:"description";s:15:"Add a revision.";s:5:"flags";a:0:{}}s:15:"delete_revision";a:5:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:59:"ID of what is being revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:12:"Revision ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"delete_revision";s:11:"description";s:29:"Delete a particular revision.";s:5:"flags";a:0:{}}s:14:"find_revisions";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"ID of what was revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}i:3;a:7:{s:4:"name";s:6:"action";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:68:"The action the revision is for, a language string (null: no filter).";s:11:"phpdoc_name";s:6:"action";}i:4;a:7:{s:4:"name";s:13:"revision_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:79:"The creation timestamp for a particular revision to retrieve (null: no filter).";s:11:"phpdoc_name";s:13:"revision_time";}i:5;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:8:"?integer";s:11:"description";s:35:"Maximum to return (null: no limit).";s:11:"phpdoc_name";s:3:"max";}i:6;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:13:"Start offset.";s:11:"phpdoc_name";s:5:"start";}i:7;a:7:{s:4:"name";s:12:"limited_data";s:7:"default";s:13:"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 to only collect IDs and other simple low-bandwidth data.";s:11:"phpdoc_name";s:12:"limited_data";}}s:4:"name";s:14:"find_revisions";s:11:"description";s:32:"Retrieve revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"List of revision maps.";}}s:13:"has_revisions";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"ID of what was revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}}s:4:"name";s:13:"has_revisions";s:11:"description";s:41:"Find if there are revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether there are revisions.";}}s:15:"total_revisions";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"ID of what was revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}}s:4:"name";s:15:"total_revisions";s:11:"description";s:38:"Find number of revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"Number of revisions.";}}s:21:"find_revision_for_log";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"actionlog_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:26:"The action log entry's ID.";s:11:"phpdoc_name";s:12:"actionlog_id";}}s:4:"name";s:21:"find_revision_for_log";s:11:"description";s:53:"Retrieve revisions for a particular action log entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"A revision map (null: not found).";}}s:18:"ui_revision_undoer";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"ID of what was revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}i:3;a:5:{s:4:"name";s:6:"action";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"The action the revision is for, a language string.";s:11:"phpdoc_name";s:6:"action";}i:4;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:52:"Current resource text (may be altered by reference).";s:11:"phpdoc_name";s:4:"text";}i:5;a:7:{s:4:"name";s:15:"revision_loaded";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:8:"?boolean";s:11:"description";s:73:"Whether a revision was loaded, passed by reference (null: initial value).";s:11:"phpdoc_name";s:15:"revision_loaded";}}s:4:"name";s:18:"ui_revision_undoer";s:11:"description";s:96:"Browse revisions to undo one.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:3:"UI.";}}}s:4:"name";s:19:"RevisionEngineFiles";s:7:"comment";b:1;}s:7:"CMS_RSS";a:3:{s:9:"functions";a:7:{s:11:"__construct";a:5:{s:8:"filename";s:15:"sources/rss.php";s:10:"parameters";a:2:{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:37:"The URL to the RSS we will be reading";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:18:"is_filesystem_path";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the 'url' is actually a filesystem path";s:11:"phpdoc_name";s:18:"is_filesystem_path";}}s:4:"name";s:11:"__construct";s:11:"description";s:92:"Constructs the RSS reader: downloads the URL and parses it. Check $error after constructing.";s:5:"flags";a:0:{}}s:14:"startNameSpace";a:5:{s:8:"filename";s:15:"sources/rss.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:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"N/A";s:11:"phpdoc_name";s:6:"prefix";}i:2;a:7:{s:4:"name";s:3:"uri";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:59:"The URI of the name space we are entering (null: not given)";s:11:"phpdoc_name";s:3:"uri";}}s:4:"name";s:14:"startNameSpace";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:12:"endNameSpace";a:5:{s:8:"filename";s:15:"sources/rss.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:12:"endNameSpace";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:12:"startElement";a:5:{s:8:"filename";s:15:"sources/rss.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:4:"name";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:4:"name";}i:2;a:5:{s:4:"name";s:10:"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:10:"attributes";}}s:4:"name";s:12:"startElement";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:10:"endElement";a:5:{s:8:"filename";s:15:"sources/rss.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:9:"startText";a:5:{s:8:"filename";s:15:"sources/rss.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:13:"trueStartText";a:5:{s:8:"filename";s:15:"sources/rss.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:13:"trueStartText";s:11:"description";s:49:"Parse the complete text of the inside of the tag.";s:5:"flags";a:0:{}}}s:4:"name";s:7:"CMS_RSS";s:7:"comment";b:1;}s:16:"FieldsSearchHook";a:3:{s:9:"functions";a:6:{s:22:"_get_extra_sort_fields";a:6:{s:8:"filename";s:18:"sources/search.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:6:"string";s:11:"description";s:83:"Catalogue we are searching in in (may be a special custom content fields catalogue)";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:22:"_get_extra_sort_fields";s:11:"description";s:32:"Get a list of extra sort fields.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A map between parameter name and string label";}}s:11:"_get_fields";a:6:{s:8:"filename";s:18:"sources/search.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:6:"string";s:11:"description";s:73:"Catalogue to search in (may be a special custom content fields catalogue)";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:11:"_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:37:"_get_search_parameterisation_advanced";a:6:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:83:"Catalogue we are searching in in (may be a special custom content fields catalogue)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:7:{s:4:"name";s:11:"table_alias";s:7:"default";s:1:"r";s:11:"default_raw";s:3:"'r'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:34:"Table alias for main content table";s:11:"phpdoc_name";s:11:"table_alias";}}s:4:"name";s:37:"_get_search_parameterisation_advanced";s:11:"description";s:65:"Get details needed (SQL etc) to perform an advanced field search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:60:"A big tuple of details used to search with (null: no fields)";}}s:54:"_get_search_parameterisation_advanced_for_content_type";a:5:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:83:"Catalogue we are searching in in (may be a special custom content fields catalogue)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:22:"Table clause to add to";s:11:"phpdoc_name";s:5:"table";}i:2;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:22:"Where clause to add to";s:11:"phpdoc_name";s:12:"where_clause";}i:3;a:5:{s:4:"name";s:12:"trans_fields";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:29:"Translatable fields to add to";s:11:"phpdoc_name";s:12:"trans_fields";}i:4;a:5:{s:4:"name";s:15:"nontrans_fields";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:33:"Non-translatable fields to add to";s:11:"phpdoc_name";s:15:"nontrans_fields";}}s:4:"name";s:54:"_get_search_parameterisation_advanced_for_content_type";s:11:"description";s:141:"Get details needed (SQL etc) to perform an advanced field search for custom content fields (builds on _get_search_parameterisation_advanced).";s:5:"flags";a:0:{}}s:18:"_handle_date_check";a:5:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The field name of the timestamp field in the database";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:49:"Additional where clause will be written into here";s:11:"phpdoc_name";s:12:"where_clause";}}s:4:"name";s:18:"_handle_date_check";s:11:"description";s:46:"Insert a date range check into a WHERE clause.";s:5:"flags";a:0:{}}s:26:"_handle_date_check_runtime";a:6:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:2:{i:0;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:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:23:"Timestamp to compare to";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:26:"_handle_date_check_runtime";s:11:"description";s:44:"Do a date range check for a known timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether the date matches the requirements of $cutoff";}}}s:4:"name";s:16:"FieldsSearchHook";s:7:"comment";b:1;}s:17:"Hook_sitemap_base";a:3:{s:9:"functions";a:13:{s:21:"_request_page_details";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The codename of the page to load";s:11:"phpdoc_name";s:4:"page";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The zone the page is being loaded in";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:21:"_request_page_details";s:11:"description";s:70:"Take the specified parameters, and try to find the corresponding page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:41:"A list of details (false: page not found)";}}s:29:"_is_page_omitted_from_sitemap";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:2:{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:36:"The zone the page is being loaded in";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:32:"The codename of the page to load";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:29:"_is_page_omitted_from_sitemap";s:11:"description";s:55:"Find whether a page should be omitted from the sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the page should be omitted.";}}s:9:"is_active";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:19:"_make_zone_concrete";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:1;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The zone in the recurse tree (replaced by reference).";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:1;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The page-link (replaced by reference).";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:19:"_make_zone_concrete";s:11:"description";s:125:"Remap '_SEARCH' zones if we can derive the zone from the page-link / or fix _SEARCH in the page-link if there's a known zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:79:"The page name (only returned because it could also be useful, saves some code).";}}s:17:"handles_page_link";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:19:"_get_sitemap_object";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"hook";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:75:"The hook, i.e. the Sitemap object type. Usually the same as a content type.";s:11:"phpdoc_name";s:4:"hook";}}s:4:"name";s:19:"_get_sitemap_object";s:11:"description";s:89:"Get a particular Sitemap object. Used for easily tying in a different kind of child node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"object";s:11:"description";s:19:"The Sitemap object.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:162:"Find all nodes at the top level position in the Sitemap for this hook.May be a single node (i.e. a category root) or multiple nodes (if there's a flat structure).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}s:23:"_check_node_permissions";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"struct";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Node structure";s:11:"phpdoc_name";s:6:"struct";}}s:4:"name";s:23:"_check_node_permissions";s:11:"description";s:95:"Check the permissions of the node structure, returning false if they fail for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the permissions pass";}}s:18:"get_privilege_page";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:39:"extract_child_page_link_permission_pair";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:39:"extract_child_page_link_permission_pair";s:11:"description";s:73:"Convert a page-link to a category ID and category permission module type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The pair (null: permission modules not handled)";}}s:29:"_load_row_from_page_groupings";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:34:"Faked database row (null: derive).";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The zone.";s:11:"phpdoc_name";s:4:"zone";}i:2;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The page.";s:11:"phpdoc_name";s:4:"page";}i:3;a:7:{s:4:"name";s:4:"type";s:7:"default";s:6:"browse";s:11:"default_raw";s:8:"'browse'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The type.";s:11:"phpdoc_name";s:4:"type";}i:4;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:23:"The ID (null: unknown).";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:29:"_load_row_from_page_groupings";s:11:"description";s:27:"Find details for this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:34:"Faked database row (null: derive).";}}s:20:"_ameliorate_with_row";a:5:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:1;a:5:{s:4:"name";s:6:"struct";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:10:"Structure.";s:11:"phpdoc_name";s:6:"struct";}i:2;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:50:"Faked database row (null: we don't have row data).";s:11:"phpdoc_name";s:3:"row";}i:3;a:5:{s:4:"name";s:11:"meta_gather";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}}s:4:"name";s:20:"_ameliorate_with_row";s:11:"description";s:79:"Extend the node structure with added details from our row data (if we have it).";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_sitemap_base";s:7:"comment";b:1;}s:20:"Hook_sitemap_content";a:3:{s:9:"functions";a:7:{s:17:"handles_page_link";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"_get_page_link_id";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"_get_page_link_id";s:11:"description";s:33:"Get a content ID via a page-link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:23:"The ID (null: unknown).";}}s:13:"_get_cma_info";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_get_cma_info";s:11:"description";s:38:"Get the CMA info for our content hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"The CMA info.";}}s:8:"_get_row";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The content ID.";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:8:"_get_row";s:11:"description";s:38:"Get the database row for some content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"The content row.";}}s:30:"_create_partial_node_structure";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:5:{s:4:"name";s:8:"callback";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:5:{s:4:"name";s:16:"valid_node_types";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:5:{s:4:"name";s:12:"child_cutoff";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:5:{s:4:"name";s:17:"max_recurse_depth";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:5:{s:4:"name";s:13:"recurse_level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:5:{s:4:"name";s:11:"meta_gather";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:30:"_create_partial_node_structure";s:11:"description";s:73:"Pre-fill part of the node structure, from what we know from the CMA hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"A tuple: content ID, row, partial node structure (null: filtered).";}}s:19:"_get_children_nodes";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The content ID.";s:11:"phpdoc_name";s:10:"content_id";}i:1;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:2;a:5:{s:4:"name";s:8:"callback";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:3;a:5:{s:4:"name";s:16:"valid_node_types";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:4;a:5:{s:4:"name";s:12:"child_cutoff";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:5;a:5:{s:4:"name";s:17:"max_recurse_depth";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:6;a:5:{s:4:"name";s:13:"recurse_level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:7;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:8;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:9;a:5:{s:4:"name";s:11:"meta_gather";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:10;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:11;a:7:{s:4:"name";s:19:"extra_where_entries";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:54:"Extra SQL piece for considering which entries to load.";s:11:"phpdoc_name";s:19:"extra_where_entries";}i:12;a:7:{s:4:"name";s:25:"explicit_order_by_entries";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:48:"Order by for entries (null: alphabetical title).";s:11:"phpdoc_name";s:25:"explicit_order_by_entries";}i:13;a:7:{s:4:"name";s:31:"explicit_order_by_subcategories";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:"Order by for categories (null: alphabetical title).";s:11:"phpdoc_name";s:31:"explicit_order_by_subcategories";}}s:4:"name";s:19:"_get_children_nodes";s:11:"description";s:63:"Get a list of child nodes, from what we know from the CMA hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"Child nodes (null: not retrieved yet).";}}s:39:"extract_child_page_link_permission_pair";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:39:"extract_child_page_link_permission_pair";s:11:"description";s:73:"Convert a page-link to a category ID and category permission module type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The pair (null: permission modules not handled)";}}}s:4:"name";s:20:"Hook_sitemap_content";s:7:"comment";b:1;}s:8:"Tempcode";a:3:{s:9:"functions";a:18:{s:11:"__construct";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"details";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:"Pair: Code to preexecute, Initialisation seq-parts (null: start as empty)";s:11:"phpdoc_name";s:7:"details";}}s:4:"name";s:11:"__construct";s:11:"description";s:23:"Constructor of Tempcode";s:5:"flags";a:0:{}}s:7:"__sleep";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"__sleep";s:11:"description";s:43:"PHP magic function to handle serialisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"What is to be serialised";}}s:7:"decache";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"decache";s:11:"description";s:58:"Remove any internal evaluation cachings within the object.";s:5:"flags";a:0:{}}s:10:"parse_from";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:26:"Code string (input stream)";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:30:"Start position of input string";s:11:"phpdoc_name";s:3:"pos";}i:2;a:5:{s:4:"name";s:3:"len";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:28:"End position of input string";s:11:"phpdoc_name";s:3:"len";}}s:4:"name";s:10:"parse_from";s:11:"description";s:57:"Parse a single symbol from an input stream and append it.";s:5:"flags";a:0:{}}s:6:"attach";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"attach";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:29:"The Tempcode/string to attach";s:11:"phpdoc_name";s:6:"attach";}i:1;a:7:{s:4:"name";s:17:"avoid_child_merge";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"If we've already merged the children from what we're attaching into the child tree (at bind stage)";s:11:"phpdoc_name";s:17:"avoid_child_merge";}}s:4:"name";s:6:"attach";s:11:"description";s:74:"Attach the specified Tempcode to the right of the current Tempcode object.";s:5:"flags";a:0:{}}s:11:"to_assembly";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"to_assembly";s:11:"description";s:201:"Assemble the current Tempcode object into a single serialised (compiled) Tempcode storage representation (parameters and certain symbols and not evaluated). The output of the function is language-tied.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The assembly result";}}s:22:"from_assembly_executed";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{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:16:"The file to load";s:11:"phpdoc_name";s:4:"file";}i:1;a:5:{s:4:"name";s:21:"forced_reload_details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:50:"List of parameters for a forced reload if required";s:11:"phpdoc_name";s:21:"forced_reload_details";}}s:4:"name";s:22:"from_assembly_executed";s:11:"description";s:166:"The opposite of to_assembly - it decodes a Tempcode storage representation and turns it into a proper Tempcode object. This version handles the result of evaled code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:67:"Success status (it can fail, if the compiled cache file is corrupt)";}}s:20:"_mark_all_as_escaped";a:5:{s:8:"filename";s:20:"sources/tempcode.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:34:"Whether this is the top-level call";s:11:"phpdoc_name";s:9:"top_level";}}s:4:"name";s:20:"_mark_all_as_escaped";s:11:"description";s:146:"Recursively mark all parameters in this Tempcode as escaped. This is needed when loading from cache, as escape tainting data would have been lost.";s:5:"flags";a:0:{}}s:13:"from_assembly";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"raw_data";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:22:"The assembled Tempcode";s:11:"phpdoc_name";s:8:"raw_data";}i:1;a:7:{s:4:"name";s:13:"allow_failure";s:7:"default";s:13:"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:"Return error code on failure, rather than exiting";s:11:"phpdoc_name";s:13:"allow_failure";}}s:4:"name";s:13:"from_assembly";s:11:"description";s:118:"The opposite of to_assembly - it decodes a Tempcode storage representation and turns it into a proper Tempcode object.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:67:"Success status (it can fail, if the compiled cache file is corrupt)";}}s:13:"parameterless";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{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:23:"Offset to the construct";s:11:"phpdoc_name";s:2:"at";}}s:4:"name";s:13:"parameterless";s:11:"description";s:63:"Find whether a construct within this Tempcode is parameterless.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether it is parameterless";}}s:4:"bind";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:43:"Map of parameters to bind parameter bits to";s:11:"phpdoc_name";s:10:"parameters";}i:1;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The codename of the template this Tempcode is from";s:11:"phpdoc_name";s:8:"codename";}}s:4:"name";s:4:"bind";s:11:"description";s:108:"Bind the parameter bits, or recursively bind children (doesn't change self, returns a bound Tempcode object)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The new bound Tempcode object";}}s:13:"singular_bind";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Named parameter";s:11:"phpdoc_name";s:9:"parameter";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Specific value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:13:"singular_bind";s:11:"description";s:232:"Replace the named parameter with a specific value. Hardly used, but still important. Note that this will bind to all kinds of things that might not normally take named parameters, like symbols; this should not cause problems though.";s:5:"flags";a:0:{}}s:27:"handle_symbol_preprocessing";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"handle_symbol_preprocessing";s:11:"description";s:68:"Scan this Tempcode for anything that needs to be symbol-preprocessed";s:5:"flags";a:0:{}}s:14:"is_empty_shell";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"is_empty_shell";s:11:"description";s:304:"Find whether the Tempcode object entirely empty (devoid of anything evaluable), not just evaluates as empty. This is also useful if you want to avoid early evaluation, which will mess up GET/SET flow.Does not perform an evaluation, so will not trigger any early pre-processing or out-of-order evaluation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether it is entirely empty";}}s:8:"is_empty";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"is_empty";s:11:"description";s:49:"Find whether the Tempcode object is blank or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether the Tempcode object is empty";}}s:10:"__toString";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"__toString";s:11:"description";s:65:"Parses the current Tempcode object, then return the parsed string";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The evaluated thing.";}}s:8:"evaluate";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:12:"current_lang";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:61:"The language to evaluate with (null: current user's language)";s:11:"phpdoc_name";s:12:"current_lang";}}s:4:"name";s:8:"evaluate";s:11:"description";s:65:"Parses the current Tempcode object, then return the parsed string";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:42:"The evaluated thing. Voila, it's all over!";}}s:13:"evaluate_echo";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"current_lang";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:60:"The language to evaluate with (null: current users language)";s:11:"phpdoc_name";s:12:"current_lang";}i:1;a:7:{s:4:"name";s:13:"stop_if_stuck";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:113:"Whether to stop if we are stuck of a seq_part with parameters yet-unbound, and to continue from last resume point";s:11:"phpdoc_name";s:13:"stop_if_stuck";}}s:4:"name";s:13:"evaluate_echo";s:11:"description";s:63:"Parse the current Tempcode object, then echo it to the browser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:52:"Blank string. Allows chaining within echo statements";}}}s:4:"name";s:8:"Tempcode";s:7:"comment";b:1;}s:9:"CMS_Topic";a:3:{s:9:"functions";a:20:{s:11:"__construct";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:21:"set_rendering_context";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"rendering_context";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Rendering context";s:11:"phpdoc_name";s:17:"rendering_context";}}s:4:"name";s:21:"set_rendering_context";s:11:"description";s:24:"Set a rendering context.";s:5:"flags";a:0:{}}s:23:"render_as_comment_topic";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:12:{i:0;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:30:"Content type to show topic for";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"Content ID of content type to show topic for";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}i:3;a:5:{s:4:"name";s:24:"invisible_if_no_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether the comment box will be invisible if there are not yet any comments (and you're not staff)";s:11:"phpdoc_name";s:24:"invisible_if_no_comments";}i:4;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:10:"forum_name";}i:5;a:5:{s:4:"name";s:12:"post_warning";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:57:"The default post to use (null: standard courtesy warning)";s:11:"phpdoc_name";s:12:"post_warning";}i:6;a:5:{s:4:"name";s:18:"preloaded_comments";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:91:"The raw comment array (null: lookup). This is useful if we want to pass it through a filter";s:11:"phpdoc_name";s:18:"preloaded_comments";}i:7;a:5:{s:4:"name";s:14:"explicit_allow";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to skip permission checks";s:11:"phpdoc_name";s:14:"explicit_allow";}i:8;a:5:{s:4:"name";s:7:"reverse";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to reverse the posts";s:11:"phpdoc_name";s:7:"reverse";}i:9;a:5:{s:4:"name";s:19:"highlight_by_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"Member to highlight the posts of (null: none)";s:11:"phpdoc_name";s:19:"highlight_by_member";}i:10;a:5:{s:4:"name";s:13:"allow_reviews";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to allow ratings along with the comment (like reviews)";s:11:"phpdoc_name";s:13:"allow_reviews";}i:11;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:31:"Maximum to load (null: default)";s:11:"phpdoc_name";s:17:"num_to_show_limit";}}s:4:"name";s:23:"render_as_comment_topic";s:11:"description";s:23:"Render a comment topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The Tempcode for the comment topic";}}s:23:"render_posts_from_topic";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:12:{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";}i:1;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Maximum to load";s:11:"phpdoc_name";s:17:"num_to_show_limit";}i:2;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}i:3;a:5:{s:4:"name";s:24:"invisible_if_no_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether the comment box will be invisible if there are not yet any comments (and you're not staff)";s:11:"phpdoc_name";s:24:"invisible_if_no_comments";}i:4;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:10:"forum_name";}i:5;a:5:{s:4:"name";s:18:"preloaded_comments";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:91:"The raw comment array (null: lookup). This is useful if we want to pass it through a filter";s:11:"phpdoc_name";s:18:"preloaded_comments";}i:6;a:5:{s:4:"name";s:7:"reverse";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to reverse the posts";s:11:"phpdoc_name";s:7:"reverse";}i:7;a:5:{s:4:"name";s:9:"may_reply";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether the current user may reply to the topic (influences what buttons show)";s:11:"phpdoc_name";s:9:"may_reply";}i:8;a:5:{s:4:"name";s:19:"highlight_by_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"Member to highlight the posts of (null: none)";s:11:"phpdoc_name";s:19:"highlight_by_member";}i:9;a:5:{s:4:"name";s:13:"allow_reviews";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to allow ratings along with the comment (like reviews)";s:11:"phpdoc_name";s:13:"allow_reviews";}i:10;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"List of post IDs to load";s:11:"phpdoc_name";s:5:"posts";}i:11;a:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:27:"Parent node being loaded to";s:11:"phpdoc_name";s:9:"parent_id";}}s:4:"name";s:23:"render_posts_from_topic";s:11:"description";s:77:"Render posts from a topic (usually tied into AJAX, to get iterative results).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The Tempcode for the comment topic";}}s:15:"_get_sort_order";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"reverse";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:93:"Whether to show in reverse date order (affects default search order only) (null: read config)";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:15:"_get_sort_order";s:11:"description";s:19:"Get the sort order.";s:5:"flags";a:0:{}s:6:"return";a:3:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Sort order";s:3:"set";s:30:"relevance rating newest oldest";}}s:15:"load_from_topic";a:6:{s:8:"filename";s:18:"sources/topics.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:10:"?AUTO_LINK";s:11:"description";s:49:"Topic ID (null: none yet, set up empty structure)";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Maximum to load";s:11:"phpdoc_name";s:17:"num_to_show_limit";}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:32:"Pagination start if non-threaded";s:11:"phpdoc_name";s:5:"start";}i:3;a:7:{s:4:"name";s:7:"reverse";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:93:"Whether to show in reverse date order (affects default search order only) (null: read config)";s:11:"phpdoc_name";s:7:"reverse";}i:4;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:5;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:58:"Whether to allow spacer posts to flow through the renderer";s:11:"phpdoc_name";s:21:"load_spacer_posts_too";}}s:4:"name";s:15:"load_from_topic";s:11:"description";s:27:"Load from a given topic ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:34:"inject_posts_for_scoring_algorithm";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Review titles";s:11:"phpdoc_name";s:5:"posts";}}s:4:"name";s:34:"inject_posts_for_scoring_algorithm";s:11:"description";s:76:"Put in posts to our scoring algorithm in preparation for shooting out later.";s:5:"flags";a:0:{}}s:27:"set_reviews_rating_criteria";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:23:"reviews_rating_criteria";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Review criteria";s:11:"phpdoc_name";s:23:"reviews_rating_criteria";}}s:4:"name";s:27:"set_reviews_rating_criteria";s:11:"description";s:57:"Set the particular review criteria we'll be dealing with.";s:5:"flags";a:0:{}}s:12:"render_posts";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:50:"Number of posts to show initially (null: no limit)";s:11:"phpdoc_name";s:17:"num_to_show_limit";}i:1;a:5:{s:4:"name";s:16:"max_thread_depth";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"Maximum thread depth";s:11:"phpdoc_name";s:16:"max_thread_depth";}i:2;a:5:{s:4:"name";s:9:"may_reply";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether the current user may reply to the topic (influences what buttons show)";s:11:"phpdoc_name";s:9:"may_reply";}i:3;a:5:{s:4:"name";s:19:"highlight_by_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"Member to highlight the posts of (null: none)";s:11:"phpdoc_name";s:19:"highlight_by_member";}i:4;a:5:{s:4:"name";s:29:"all_individual_review_ratings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Review ratings rows";s:11:"phpdoc_name";s:29:"all_individual_review_ratings";}i:5;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:28:"ID of forum this topic in in";s:11:"phpdoc_name";s:8:"forum_id";}i:6;a:5:{s:4:"name";s:10:"topic_info";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:43:"The topic row (null: not running Conversr).";s:11:"phpdoc_name";s:10:"topic_info";}i:7;a:7:{s:4:"name";s:14:"parent_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:55:"Only show posts under here (null: show posts from root)";s:11:"phpdoc_name";s:14:"parent_post_id";}i:8;a:7:{s:4:"name";s:19:"maybe_missing_links";s:7:"default";s:13:"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 just render everything as flat (used when doing AJAX post loading). NOT actually used since we wrote better post-orphaning-fixing code.";s:11:"phpdoc_name";s:19:"maybe_missing_links";}}s:4:"name";s:12:"render_posts";s:11:"description";s:15:"Render a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:118:"Tuple: Rendered topic, serialized options to render more posts, secure hash of serialized options to prevent tampering";}}s:22:"_decide_what_to_render";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:33:"Number of posts to show initially";s:11:"phpdoc_name";s:17:"num_to_show_limit";}i:1;a:5:{s:4:"name";s:5:"queue";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:41:"Posts to choose from, in preference order";s:11:"phpdoc_name";s:5:"queue";}}s:4:"name";s:22:"_decide_what_to_render";s:11:"description";s:38:"Filter posts, deciding what to render.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"Chosen posts";}}s:29:"_grab_at_and_above_and_remove";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:24:"Reference post in thread";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:5:"queue";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:32:"Posts to choose from (the queue)";s:11:"phpdoc_name";s:5:"queue";}i:2;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:38:"Posts picked out (passed by reference)";s:11:"phpdoc_name";s:5:"posts";}}s:4:"name";s:29:"_grab_at_and_above_and_remove";s:11:"description";s:62:"Grab posts at or above a reference post and remove from queue.";s:5:"flags";a:0:{}}s:23:"_grab_at_and_underneath";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"parent_post_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:37:"Reference post in thread (null: root)";s:11:"phpdoc_name";s:14:"parent_post_id";}i:1;a:5:{s:4:"name";s:8:"posts_in";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"Posts to choose from";s:11:"phpdoc_name";s:8:"posts_in";}}s:4:"name";s:23:"_grab_at_and_underneath";s:11:"description";s:45:"Grab posts at or underneath a reference post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Relevant posts";}}s:23:"_grab_full_post_details";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Posts to load";s:11:"phpdoc_name";s:5:"posts";}}s:4:"name";s:23:"_grab_full_post_details";s:11:"description";s:72:"Load full details for posts (we had not done so far to preserve memory).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Upgraded posts";}}s:22:"_arrange_posts_in_tree";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:37:"Reference post in thread (null: root)";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:101:"Posts we will be rendering and have not arranged yet (only some of which will be underneath $post_id)";s:11:"phpdoc_name";s:5:"posts";}i:2;a:5:{s:4:"name";s:5:"queue";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"Posts we won't be rendering";s:11:"phpdoc_name";s:5:"queue";}i:3;a:5:{s:4:"name";s:16:"max_thread_depth";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:26:"Maximum depth to render to";s:11:"phpdoc_name";s:16:"max_thread_depth";}i:4;a:7:{s:4:"name";s:5:"depth";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:26:"Current depth in recursion";s:11:"phpdoc_name";s:5:"depth";}}s:4:"name";s:22:"_arrange_posts_in_tree";s:11:"description";s:78:"Arrange posts underneath a post in the thread (not including the post itself).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"Array structure of rendered posts";}}s:17:"_render_post_tree";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Maximum to load";s:11:"phpdoc_name";s:17:"num_to_show_limit";}i:1;a:5:{s:4:"name";s:4:"tree";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Tree structure of posts";s:11:"phpdoc_name";s:4:"tree";}i:2;a:5:{s:4:"name";s:9:"may_reply";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether the current user may reply to the topic (influences what buttons show)";s:11:"phpdoc_name";s:9:"may_reply";}i:3;a:5:{s:4:"name";s:19:"highlight_by_member";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:55:"Only show posts under here (null: show posts from root)";s:11:"phpdoc_name";s:19:"highlight_by_member";}i:4;a:5:{s:4:"name";s:29:"all_individual_review_ratings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Review ratings rows";s:11:"phpdoc_name";s:29:"all_individual_review_ratings";}i:5;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:28:"ID of forum this topic in in";s:11:"phpdoc_name";s:8:"forum_id";}i:6;a:5:{s:4:"name";s:10:"topic_info";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:43:"The topic row (null: not running Conversr).";s:11:"phpdoc_name";s:10:"topic_info";}i:7;a:7:{s:4:"name";s:5:"depth";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:"The recursion depth";s:11:"phpdoc_name";s:5:"depth";}}s:4:"name";s:17:"_render_post_tree";s:11:"description";s:13:"Render posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:23:"Rendered tree structure";}}s:30:"set_level_has_adjacent_sibling";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"An array of posts";s:11:"phpdoc_name";s:5:"posts";}i:1;a:7:{s:4:"name";s:26:"level_has_adjacent_sibling";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:"For internal use only (null: none)";s:11:"phpdoc_name";s:26:"level_has_adjacent_sibling";}}s:4:"name";s:30:"set_level_has_adjacent_sibling";s:11:"description";s:196:"Sets a level_has_adjacent_sibling property on posts, which is a single-dimensional arraywith a boolean value for every parent post and the post itself containing whether it has an adjacent sibling";s:5:"flags";a:0:{}}s:20:"render_post_map_item";a:6:{s:8:"filename";s:18:"sources/topics.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:5:"array";s:11:"description";s:6:"A post";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:20:"render_post_map_item";s:11:"description";s:47:"Renders the post map items to a tempcode object";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:0:"";}}s:14:"inject_rss_url";a:5:{s:8:"filename";s:18:"sources/topics.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:7:"ID_TEXT";s:11:"description";s:27:"The forum we are working in";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The content type the comments are for";s:11:"phpdoc_name";s:4:"type";}i:2;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 content ID the comments are for";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"inject_rss_url";s:11:"description";s:39:"Put comments RSS link into environment.";s:5:"flags";a:0:{}}s:15:"inject_metadata";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"inject_metadata";s:11:"description";s:33:"Put posts count into environment.";s:5:"flags";a:0:{}}s:16:"get_posting_form";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:5:{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:49:"The content type of what this posting will be for";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:47:"The content ID of what this posting will be for";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:13:"allow_reviews";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether to accept reviews";s:11:"phpdoc_name";s:13:"allow_reviews";}i:3;a:5:{s:4:"name";s:8:"post_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"URL where form submit will go";s:11:"phpdoc_name";s:8:"post_url";}i:4;a:5:{s:4:"name";s:12:"post_warning";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:57:"The default post to use (null: standard courtesy warning)";s:11:"phpdoc_name";s:12:"post_warning";}}s:4:"name";s:16:"get_posting_form";s:11:"description";s:23:"Get a form for posting.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"Posting form";}}}s:4:"name";s:9:"CMS_Topic";s:7:"comment";b:1;}s:21:"CMS_simple_xml_reader";a:3:{s:9:"functions";a:5:{s:11:"__construct";a:5:{s:8:"filename";s:15:"sources/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"xml_data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The XML data";s:11:"phpdoc_name";s:8:"xml_data";}}s:4:"name";s:11:"__construct";s:11:"description";s:95:"Constructs the XML reader: parses the given data. Check $gleamed and $error after constructing.";s:5:"flags";a:0:{}}s:12:"startElement";a:5:{s:8:"filename";s:15:"sources/xml.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:4:"name";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:4:"name";}i:2;a:5:{s:4:"name";s:10:"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:10:"attributes";}}s:4:"name";s:12:"startElement";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:10:"endElement";a:5:{s:8:"filename";s:15:"sources/xml.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:9:"startText";a:5:{s:8:"filename";s:15:"sources/xml.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:13:"pull_together";a:6:{s:8:"filename";s:15:"sources/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"children";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Level of XML tree";s:11:"phpdoc_name";s:8:"children";}}s:4:"name";s:13:"pull_together";s:11:"description";s:62:"Pull a portion of an XML tree structure back into textual XML.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The combined XML";}}}s:4:"name";s:21:"CMS_simple_xml_reader";s:7:"comment";b:1;}s:8:"__global";a:1:{s:9:"functions";a:3271:{s:23:"code_editor_escape_html";a:6:{s:8:"filename";s:15:"code_editor.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:9:"LONG_TEXT";s:11:"description";s:19:"The text to escape.";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:23:"code_editor_escape_html";s:11:"description";s:92:"Escape HTML text. Heavily optimised! Ended up with preg_replace after trying lots of things.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:19:"The escaped result.";}}s:21:"code_editor_do_header";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:2:{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:29:"The type our form clicks are.";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:6:"target";s:7:"default";s:4:"_top";s:11:"default_raw";s:6:"'_top'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:39:"The target our form clicks get sent to.";s:11:"phpdoc_name";s:6:"target";}}s:4:"name";s:21:"code_editor_do_header";s:11:"description";s:36:"Output the code editors page header.";s:5:"flags";a:0:{}}s:21:"code_editor_do_footer";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"code_editor_do_footer";s:11:"description";s:36:"Output the code editors page footer.";s:5:"flags";a:0:{}}s:20:"code_editor_do_login";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"code_editor_do_login";s:11:"description";s:20:"Output a login page.";s:5:"flags";a:0:{}}s:9:"ce_do_dir";a:6:{s:8:"filename";s:15:"code_editor.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:10:"SHORT_TEXT";s:11:"description";s:29:"The directory path to search.";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:9:"ce_do_dir";s:11:"description";s:86:"Search inside a directory for editable files, while favouring the overridden versions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A list of the HTML elements for the list box selection.";}}s:11:"do_get_path";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"given_password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:55:"The password previously given to authorise our editing.";s:11:"phpdoc_name";s:14:"given_password";}}s:4:"name";s:11:"do_get_path";s:11:"description";s:31:"Output the file selection page.";s:5:"flags";a:0:{}}s:18:"ce_fix_permissions";a:5:{s:8:"filename";s:15:"code_editor.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:39:"The full pathname to the file/directory";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:5:"perms";s:7:"default";i:438;s:11:"default_raw";s:4:"0666";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:156:"The permissions to make (not the permissions are reduced if the function finds that the file is owned by the web user [doesn't need world permissions then])";s:11:"phpdoc_name";s:5:"perms";}}s:4:"name";s:18:"ce_fix_permissions";s:11:"description";s:252:"Ensure that the specified file/folder is writeable for the FTP user (so that it can be deleted by the system), and should be called whenever a file is uploaded/created, or a folder is made. We call this function assuming we are giving world permissions";s:5:"flags";a:0:{}}s:22:"open_up_ftp_connection";a:6:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"open_up_ftp_connection";s:11:"description";s:46:"Open up an FTP connection from POSTed details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:61:"Either an error screen or a connection. (null: not using FTP)";}}s:7:"do_page";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"given_password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:55:"The password previously given to authorise our editing.";s:11:"phpdoc_name";s:14:"given_password";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The path of the file we are editing.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:7:"do_page";s:11:"description";s:43:"Output the editing page and do the editing.";s:5:"flags";a:0:{}}s:20:"convert_to_save_path";a:6:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"save_path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The normal path";s:11:"phpdoc_name";s:9:"save_path";}}s:4:"name";s:20:"convert_to_save_path";s:11:"description";s:48:"Convert a normal path to an overriden save path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"The overridden save path";}}s:12:"ce_sync_file";a:5:{s:8:"filename";s:15:"code_editor.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:61:"File/directory name to sync on (may be full or relative path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:12:"ce_sync_file";s:11:"description";s:66:"Provides a hook for file synchronisation between mirrored servers.";s:5:"flags";a:0:{}}s:17:"ce_sync_file_move";a:5:{s:8:"filename";s:15:"code_editor.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:4:"PATH";s:11:"description";s:63:"File/directory name to move from (may be full or relative path)";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:4:"PATH";s:11:"description";s:61:"File/directory name to move to (may be full or relative path)";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:17:"ce_sync_file_move";s:11:"description";s:66:"Provides a hook for file synchronisation between mirrored servers.";s:5:"flags";a:0:{}}s:24:"ce_check_master_password";a:6:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:24:"ce_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:14:"ce_cms_tempnam";a:6:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"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:38:"The prefix of the temporary file name.";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:14:"ce_cms_tempnam";s:11:"description";s:229:"Create file with unique file name, but works around compatibility issues between servers. Note that the file is NOT automatically deleted. You should also delete it using "@unlink", as some servers have problems with permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:46:"The name of the temporary file (false: error).";}}s:12:"ce_do_header";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"ce_do_header";s:11:"description";s:38:"Output the config editors page header.";s:5:"flags";a:0:{}}s:12:"ce_do_footer";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"ce_do_footer";s:11:"description";s:38:"Output the config editors page footer.";s:5:"flags";a:0:{}}s:11:"ce_do_login";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"ce_do_login";s:11:"description";s:20:"Output a login page.";s:5:"flags";a:0:{}}s:9:"do_access";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"given_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"The password given to get here (so we don't need to re-enter it each edit).";s:11:"phpdoc_name";s:14:"given_password";}}s:4:"name";s:9:"do_access";s:11:"description";s:24:"Output the editing page.";s:5:"flags";a:0:{}}s:6:"do_set";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"do_set";s:11:"description";s:15:"Do the editing.";s:5:"flags";a:0:{}}s:12:"co_sync_file";a:5:{s:8:"filename";s:17:"config_editor.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:61:"File/directory name to sync on (may be full or relative path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:12:"co_sync_file";s:11:"description";s:66:"Provides a hook for file synchronisation between mirrored servers.";s:5:"flags";a:0:{}}s:17:"co_sync_file_move";a:5:{s:8:"filename";s:17:"config_editor.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:4:"PATH";s:11:"description";s:63:"File/directory name to move from (may be full or relative path)";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:4:"PATH";s:11:"description";s:61:"File/directory name to move to (may be full or relative path)";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:17:"co_sync_file_move";s:11:"description";s:66:"Provides a hook for file synchronisation between mirrored servers.";s:5:"flags";a:0:{}}s:24:"co_check_master_password";a:6:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:24:"co_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:30:"handle_failover_auto_switching";a:5:{s:8:"filename";s:24:"data/failover_script.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"iteration";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:93:"The check iteration (if deactivating we check a number of times to ensure all is still okay).";s:11:"phpdoc_name";s:9:"iteration";}}s:4:"name";s:30:"handle_failover_auto_switching";s:11:"description";s:83:"Switch over the failover mode appropriately if we detect a change in problem state.";s:5:"flags";a:0:{}}s:10:"is_failing";a:5:{s:8:"filename";s:24:"data/failover_script.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Check that failed.";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:10:"is_failing";s:11:"description";s:57:"A check has failed, inform contact(s) about it then exit.";s:5:"flags";a:0:{}}s:19:"send_failover_email";a:5:{s:8:"filename";s:24:"data/failover_script.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Subject.";s:11:"phpdoc_name";s:7:"subject";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Body.";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:19:"send_failover_email";s:11:"description";s:22:"Send a failover email.";s:5:"flags";a:0:{}}s:17:"set_failover_mode";a:5:{s:8:"filename";s:24:"data/failover_script.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"new_mode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"New failover mode.";s:11:"phpdoc_name";s:8:"new_mode";}}s:4:"name";s:17:"set_failover_mode";s:11:"description";s:33:"Set failover mode to a new value.";s:5:"flags";a:0:{}}s:13:"qr_get_domain";a:6:{s:8:"filename";s:22:"data/quash_referer.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"qr_get_domain";s:11:"description";s:28:"Find the active domain name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"Active domain name";}}s:13:"up2_do_header";a:5:{s:8:"filename";s:18:"data/upgrader2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:11:"refresh_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:31:"URL to go to next (blank: done)";s:11:"phpdoc_name";s:11:"refresh_url";}}s:4:"name";s:13:"up2_do_header";s:11:"description";s:32:"Output the upgrader page header.";s:5:"flags";a:0:{}}s:13:"up2_do_footer";a:5:{s:8:"filename";s:18:"data/upgrader2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"up2_do_footer";s:11:"description";s:32:"Output the upgrader page footer.";s:5:"flags";a:0:{}}s:31:"upgrader2_check_master_password";a:6:{s:8:"filename";s:18:"data/upgrader2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:21:"password_given_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:21:"password_given_hashed";}}s:4:"name";s:31:"upgrader2_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:9:"tick_func";a:5:{s:8:"filename";s:9:"index.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"tick_func";s:11:"description";s:22:"Profile tick function.";s:5:"flags";a:0:{}}s:9:"rd_do_dir";a:6:{s:8:"filename";s:21:"rootkit_detection.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:10:"SHORT_TEXT";s:11:"description";s:29:"The directory path to search.";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:9:"rd_do_dir";s:11:"description";s:36:"Search inside a directory for files.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:36:"The HTML for the list box selection.";}}s:12:"rd_do_header";a:5:{s:8:"filename";s:21:"rootkit_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"rd_do_header";s:11:"description";s:38:"Output the config editors page header.";s:5:"flags";a:0:{}}s:12:"rd_do_footer";a:5:{s:8:"filename";s:21:"rootkit_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"rd_do_footer";s:11:"description";s:38:"Output the config editors page footer.";s:5:"flags";a:0:{}}s:24:"rk_check_master_password";a:6:{s:8:"filename";s:21:"rootkit_detection.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:24:"rk_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:27:"init__abstract_file_manager";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"init__abstract_file_manager";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"force_have_afm_details";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"force_have_afm_details";s:11:"description";s:91:"Make sure that the AFM connection details have been posted. If not, get them and loop back.";s:5:"flags";a:0:{}}s:12:"get_afm_form";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_afm_form";s:11:"description";s:19:"Force an AFM login.";s:5:"flags";a:0:{}}s:19:"get_afm_form_fields";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_afm_form_fields";s:11:"description";s:77:"Get the fields that need to be filled in to know how to do an AFM connection.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The form fields.";}}s:9:"_ftp_info";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"light_fail";s:7:"default";s:13:"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 simply echo-out errors.";s:11:"phpdoc_name";s:10:"light_fail";}}s:4:"name";s:9:"_ftp_info";s:11:"description";s:54:"Return the FTP connection, from stored/posted details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"~resource";s:11:"description";s:51:"The FTP connection (false: not connecting via FTP).";}}s:21:"_translate_dir_access";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether world directory access is required.";s:11:"phpdoc_name";s:12:"world_access";}}s:4:"name";s:21:"_translate_dir_access";s:11:"description";s:88:"Translate truth about needing world write access to a directory to absolute permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:24:"The absolute permission.";}}s:22:"_translate_file_access";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether world file access is required.";s:11:"phpdoc_name";s:12:"world_access";}i:1;a:7:{s:4:"name";s:9:"file_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:34:"The file type (blank: don't care).";s:11:"phpdoc_name";s:9:"file_type";}}s:4:"name";s:22:"_translate_file_access";s:11:"description";s:83:"Translate truth about needing world write access to a file to absolute permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:24:"The absolute permission.";}}s:14:"_access_string";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"access_int";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The integer permission.";s:11:"phpdoc_name";s:10:"access_int";}}s:4:"name";s:14:"_access_string";s:11:"description";s:52:"Convert an integer permission to the string version.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The string version.";}}s:13:"_rescope_path";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.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:14:"Original path.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"_rescope_path";s:11:"description";s:65:"Rescope a Composr path to a path suitable for the AFM connection.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:14:"Rescoped path.";}}s:13:"afm_set_perms";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:61:"The path of the file/directory we are setting permissions of.";s:11:"phpdoc_name";s:10:"basic_path";}i:1;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether world access is required.";s:11:"phpdoc_name";s:12:"world_access";}}s:4:"name";s:13:"afm_set_perms";s:11:"description";s:46:"Sets permissions over the open AFM connection.";s:5:"flags";a:0:{}}s:18:"afm_make_directory";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:47:"The path to and of the directory we are making.";s:11:"phpdoc_name";s:10:"basic_path";}i:1;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether world access is required.";s:11:"phpdoc_name";s:12:"world_access";}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:125:"Whether we should recursively make any directories that are missing in the given path, until we can make the final directory.";s:11:"phpdoc_name";s:9:"recursive";}}s:4:"name";s:18:"afm_make_directory";s:11:"description";s:46:"Make a directory over the open AFM connection.";s:5:"flags";a:0:{}}s:13:"_get_dir_tree";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:34:"The base directory for the search.";s:11:"phpdoc_name";s:4:"base";}i:1;a:7:{s:4:"name";s:2:"at";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:43:"The directory where we are searching under.";s:11:"phpdoc_name";s:2:"at";}}s:4:"name";s:13:"_get_dir_tree";s:11:"description";s:38:"Get a list of files under a directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"An array of directories found under this recursive level.";}}s:20:"afm_delete_directory";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:49:"The path to and of the directory we are deleting.";s:11:"phpdoc_name";s:10:"basic_path";}i:1;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:69:"Whether we should recursively delete any child files and directories.";s:11:"phpdoc_name";s:9:"recursive";}}s:4:"name";s:20:"afm_delete_directory";s:11:"description";s:48:"Delete a directory over the open AFM connection.";s:5:"flags";a:0:{}}s:13:"afm_make_file";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:35:"The path to the file we are making.";s:11:"phpdoc_name";s:10:"basic_path";}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:26:"The desired file contents.";s:11:"phpdoc_name";s:8:"contents";}i:2;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether world access is required.";s:11:"phpdoc_name";s:12:"world_access";}}s:4:"name";s:13:"afm_make_file";s:11:"description";s:101:"Make a new file over the open AFM connection. Will overwrite if already exists (assuming has access).";s:5:"flags";a:0:{}}s:13:"afm_read_file";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.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:36:"The path to the file we are reading.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"afm_read_file";s:11:"description";s:98:"Read a file (not actually over the open AFM connection, but same result: we can do this directly).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:25:"The contents of the file.";}}s:8:"afm_copy";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"old_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:36:"The path to the file we are copying.";s:11:"phpdoc_name";s:8:"old_path";}i:1;a:5:{s:4:"name";s:8:"new_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:16:"The target path.";s:11:"phpdoc_name";s:8:"new_path";}i:2;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether world access is required for the copy.";s:11:"phpdoc_name";s:12:"world_access";}}s:4:"name";s:8:"afm_copy";s:11:"description";s:59:"Copies a file (NOT a directory) on the open AFM connection.";s:5:"flags";a:0:{}}s:8:"afm_move";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"basic_old_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The path to the file we are moving from.";s:11:"phpdoc_name";s:14:"basic_old_path";}i:1;a:5:{s:4:"name";s:14:"basic_new_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:16:"The target path.";s:11:"phpdoc_name";s:14:"basic_new_path";}}s:4:"name";s:8:"afm_move";s:11:"description";s:40:"Moves a file on the open AFM connection.";s:5:"flags";a:0:{}}s:15:"afm_delete_file";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"The path to the file we are deleting.";s:11:"phpdoc_name";s:10:"basic_path";}}s:4:"name";s:15:"afm_delete_file";s:11:"description";s:60:"Deletes a file (NOT a directory) on the open AFM connection.";s:5:"flags";a:0:{}}s:17:"actionlog_linkage";a:6:{s:8:"filename";s:21:"sources/actionlog.php";s:10:"parameters";a:5:{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:11:"Action type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:1:"a";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"First parameter";s:11:"phpdoc_name";s:1:"a";}i:2;a:5:{s:4:"name";s:1:"b";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Second parameter";s:11:"phpdoc_name";s:1:"b";}i:3;a:5:{s:4:"name";s:2:"_a";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:25:"First parameter (cropped)";s:11:"phpdoc_name";s:2:"_a";}i:4;a:5:{s:4:"name";s:2:"_b";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"Second parameter (cropped)";s:11:"phpdoc_name";s:2:"_b";}}s:4:"name";s:17:"actionlog_linkage";s:11:"description";s:52:"Try and make an action log entry into a proper link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:113:"Pair: first parameter as possible link, second parameter as possible link (null: could not construct a nice link)";}}s:28:"syndicate_described_activity";a:5:{s:8:"filename";s:22:"sources/activities.php";s:10:"parameters";a:12:{i:0;a:7:{s:4:"name";s:22:"a_language_string_code";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:18:"Language string ID";s:11:"phpdoc_name";s:22:"a_language_string_code";}i:1;a:7:{s:4:"name";s:9:"a_label_1";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:56:"Label 1 (given as a parameter to the language string ID)";s:11:"phpdoc_name";s:9:"a_label_1";}i:2;a:7:{s:4:"name";s:9:"a_label_2";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:56:"Label 2 (given as a parameter to the language string ID)";s:11:"phpdoc_name";s:9:"a_label_2";}i:3;a:7:{s:4:"name";s:9:"a_label_3";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:56:"Label 3 (given as a parameter to the language string ID)";s:11:"phpdoc_name";s:9:"a_label_3";}i:4;a:7:{s:4:"name";s:13:"a_page_link_1";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:"Page-link 1";s:11:"phpdoc_name";s:13:"a_page_link_1";}i:5;a:7:{s:4:"name";s:13:"a_page_link_2";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:"Page-link 2";s:11:"phpdoc_name";s:13:"a_page_link_2";}i:6;a:7:{s:4:"name";s:13:"a_page_link_3";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:"Page-link 3";s:11:"phpdoc_name";s:13:"a_page_link_3";}i:7;a:7:{s:4:"name";s:7:"a_addon";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:"Addon that caused the event";s:11:"phpdoc_name";s:7:"a_addon";}i:8;a:7:{s:4:"name";s:11:"a_is_public";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 this post should be public or friends-only";s:11:"phpdoc_name";s:11:"a_is_public";}i:9;a:7:{s:4:"name";s:11:"a_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:47:"Member being written for (null: current member)";s:11:"phpdoc_name";s:11:"a_member_id";}i:10;a:7:{s:4:"name";s:12:"sitewide_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:58:"Whether to push this out as a site event if user requested";s:11:"phpdoc_name";s:12:"sitewide_too";}i:11;a:7:{s:4:"name";s:16:"a_also_involving";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:91:"Member also 'intimately' involved, such as a content submitter who is a friend (null: none)";s:11:"phpdoc_name";s:16:"a_also_involving";}}s:4:"name";s:28:"syndicate_described_activity";s:11:"description";s:107:"Syndicate human-intended descriptions of activities performed to the internal wall, and external listeners.";s:5:"flags";a:0:{}}s:34:"has_external_site_wide_syndication";a:6:{s:8:"filename";s:22:"sources/activities.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"has_external_site_wide_syndication";s:11:"description";s:72:"Detect whether we have external site-wide syndication support somewhere.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether we do";}}s:29:"get_syndication_option_fields";a:6:{s:8:"filename";s:22:"sources/activities.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The content type this is for";s:11:"phpdoc_name";s:12:"content_type";}}s:4:"name";s:29:"get_syndication_option_fields";s:11:"description";s:25:"Get syndication field UI.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"Syndication fields (or empty)";}}s:25:"get_default_addon_details";a:6:{s:8:"filename";s:18:"sources/addons.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_default_addon_details";s:11:"description";s:26:"Find detail addon details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"Map of default addon details";}}s:15:"read_addon_info";a:6:{s:8:"filename";s:18:"sources/addons.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The name of the addon";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:24:"get_dependencies_on_this";s:7:"default";s:13:"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 search for dependencies on this";s:11:"phpdoc_name";s:24:"get_dependencies_on_this";}i:2;a:7:{s:4:"name";s:3:"row";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:"Database row (null: lookup via a new query)";s:11:"phpdoc_name";s:3:"row";}i:3;a:7:{s:4:"name";s:8:"ini_info";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:".ini-format info (needs processing) (null: unknown / N/A)";s:11:"phpdoc_name";s:8:"ini_info";}i:4;a:7:{s:4:"name";s:4:"path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:52:"Force reading from a particular path (null: no path)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:15:"read_addon_info";s:11:"description";s:102:"Get info about an addon, simulating an extended version of the traditional Composr-addon database row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The map of details";}}s:15:"find_addon_icon";a:6:{s:8:"filename";s:18:"sources/addons.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"addon_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Addon name";s:11:"phpdoc_name";s:10:"addon_name";}i:1;a:7:{s:4:"name";s:12:"pick_default";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to use a default icon if not found";s:11:"phpdoc_name";s:12:"pick_default";}i:2;a:7:{s:4:"name";s:8:"tar_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:73:"Path to TAR file (null: don't look inside a TAR / it's installed already)";s:11:"phpdoc_name";s:8:"tar_path";}}s:4:"name";s:15:"find_addon_icon";s:11:"description";s:27:"Find the icon for an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:85:"Theme image URL (may be a "data:" URL rather than a normal URLPATH) (null: not found)";}}s:13:"init__addons2";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__addons2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"upgrade_addon_soft";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The addon name";s:11:"phpdoc_name";s:5:"addon";}}s:4:"name";s:18:"upgrade_addon_soft";s:11:"description";s:28:"Upgrade the specified addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:41:"0=No upgrade. -2=Not installed, 1=Upgrade";}}s:20:"reinstall_addon_soft";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The addon name";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:8:"ini_info";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:".ini-format info (needs processing) (null: unknown / N/A)";s:11:"phpdoc_name";s:8:"ini_info";}}s:4:"name";s:20:"reinstall_addon_soft";s:11:"description";s:30:"Reinstall the specified addon.";s:5:"flags";a:0:{}}s:20:"uninstall_addon_soft";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The addon name";s:11:"phpdoc_name";s:5:"addon";}}s:4:"name";s:20:"uninstall_addon_soft";s:11:"description";s:30:"Uninstall the specified addon.";s:5:"flags";a:0:{}}s:18:"find_remote_addons";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"find_remote_addons";s:11:"description";s:50:"Find the non-bundled addons available on compo.sr.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"Map of addon ID to addon title";}}s:19:"find_updated_addons";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"find_updated_addons";s:11:"description";s:58:"Find updated addons via checking the compo.sr web service.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"List of addons updated";}}s:21:"find_installed_addons";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:16:"just_non_bundled";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to only return details on on-bundled addons";s:11:"phpdoc_name";s:16:"just_non_bundled";}i:1;a:7:{s:4:"name";s:8:"get_info";s:7:"default";s:12:"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 to get full details about each addon";s:11:"phpdoc_name";s:8:"get_info";}}s:4:"name";s:21:"find_installed_addons";s:11:"description";s:30:"Find all the installed addons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:67:"Map of maps describing the available addons (addon name => details)";}}s:26:"find_addon_effective_mtime";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"addon_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The name of the addon";s:11:"phpdoc_name";s:10:"addon_name";}}s:4:"name";s:26:"find_addon_effective_mtime";s:11:"description";s:45:"Find effective modification date of an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:50:"Modification time (null: could not find any files)";}}s:21:"find_available_addons";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:13:"installed_too";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to include addons that are installed already";s:11:"phpdoc_name";s:13:"installed_too";}}s:4:"name";s:21:"find_available_addons";s:11:"description";s:92:"Find all the available addons (addons in imports/addons that are not necessarily installed).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"Maps of maps describing the available addons (filename => details)";}}s:26:"find_addon_dependencies_on";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The name of the addon";s:11:"phpdoc_name";s:5:"addon";}}s:4:"name";s:26:"find_addon_dependencies_on";s:11:"description";s:24:"Find addon dependencies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"List of dependencies";}}s:12:"create_addon";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:15:{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:67:"Filename to create in exports/addons directory (should end in .tar)";s:11:"phpdoc_name";s:4:"file";}i:1;a:5:{s:4:"name";s:5:"files";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"List of files to include";s:11:"phpdoc_name";s:5:"files";}i:2;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Addon name";s:11:"phpdoc_name";s:5:"addon";}i:3;a:5:{s:4:"name";s:17:"incompatibilities";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:41:"Addon incompatibilities (comma-separated)";s:11:"phpdoc_name";s:17:"incompatibilities";}i:4;a:5:{s:4:"name";s:12:"dependencies";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"Addon dependencies (comma-separated)";s:11:"phpdoc_name";s:12:"dependencies";}i:5;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Addon author";s:11:"phpdoc_name";s:6:"author";}i:6;a:5:{s:4:"name";s:12:"organisation";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Addon organisation";s:11:"phpdoc_name";s:12:"organisation";}i:7;a:5:{s:4:"name";s:7:"version";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Addon version";s:11:"phpdoc_name";s:7:"version";}i:8;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Addon category";s:11:"phpdoc_name";s:8:"category";}i:9;a:5:{s:4:"name";s:21:"copyright_attribution";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"Addon copyright attribution";s:11:"phpdoc_name";s:21:"copyright_attribution";}i:10;a:5:{s:4:"name";s:7:"licence";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Addon licence";s:11:"phpdoc_name";s:7:"licence";}i:11;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Addon description";s:11:"phpdoc_name";s:11:"description";}i:12;a:7:{s:4:"name";s:3:"dir";s:7:"default";s:14:"exports/addons";s:11:"default_raw";s:16:"'exports/addons'";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:20:"Directory to save to";s:11:"phpdoc_name";s:3:"dir";}i:13;a:7:{s:4:"name";s:6:"mtimes";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:40:"A map of file mtimes to use (null: none)";s:11:"phpdoc_name";s:6:"mtimes";}i:14;a:7:{s:4:"name";s:9:"file_base";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:74:"Alternate file base to get addon files from (null: main website file base)";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:12:"create_addon";s:11:"description";s:24:"Create an addon to spec.";s:5:"flags";a:0:{}}s:13:"install_addon";a:5:{s:8:"filename";s:19:"sources/addons2.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:26:"Name of the addon TAR file";s:11:"phpdoc_name";s:4:"file";}i:1;a:7:{s:4:"name";s:5:"files";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:"The files to install (null: all)";s:11:"phpdoc_name";s:5:"files";}i:2;a:7:{s:4:"name";s:8:"do_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:12:"Do file part";s:11:"phpdoc_name";s:8:"do_files";}i:3;a:7:{s:4:"name";s:5:"do_db";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:10:"Do DB part";s:11:"phpdoc_name";s:5:"do_db";}}s:4:"name";s:13:"install_addon";s:11:"description";s:17:"Install an addon.";s:5:"flags";a:0:{}}s:15:"uninstall_addon";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Name of the addon";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:12:"clear_caches";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether to clear caches";s:11:"phpdoc_name";s:12:"clear_caches";}}s:4:"name";s:15:"uninstall_addon";s:11:"description";s:57:"Completely uninstall the specified addon from the system.";s:5:"flags";a:0:{}}s:26:"inform_about_addon_install";a:6:{s:8:"filename";s:19:"sources/addons2.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:30:"Filename of the addon TAR file";s:11:"phpdoc_name";s:4:"file";}i:1;a:7:{s:4:"name";s:17:"also_uninstalling";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:106:"List of addons that we're currently uninstalling (so dependencies from these are irrelevant). (null: none)";s:11:"phpdoc_name";s:17:"also_uninstalling";}i:2;a:7:{s:4:"name";s:15:"also_installing";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:102:"List of addons that we're currently installing (so dependencies to these are irrelevant). (null: none)";s:11:"phpdoc_name";s:15:"also_installing";}i:3;a:7:{s:4:"name";s:13:"always_return";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:103:"Whether to make sure we always return, rather than possibly bombing out with a dependency management UI";s:11:"phpdoc_name";s:13:"always_return";}}s:4:"name";s:26:"inform_about_addon_install";s:11:"description";s:85:"Get information for the user relating to an addon that they are intending to install.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:41:"Triple: warnings, files, addon info array";}}s:11:"has_feature";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"dependency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Feature name";s:11:"phpdoc_name";s:10:"dependency";}}s:4:"name";s:11:"has_feature";s:11:"description";s:79:"Find whether a particular feature is available to Composr (e.g. it's an addon).";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:28:"inform_about_addon_uninstall";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Name of the addon";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:17:"also_uninstalling";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:106:"List of addons that we're currently uninstalling (so dependencies from these are irrelevant). (null: none)";s:11:"phpdoc_name";s:17:"also_uninstalling";}i:2;a:7:{s:4:"name";s:10:"addon_info";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:39:"Addon details. (null: load in function)";s:11:"phpdoc_name";s:10:"addon_info";}i:3;a:7:{s:4:"name";s:13:"always_return";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:103:"Whether to make sure we always return, rather than possibly bombing out with a dependency management UI";s:11:"phpdoc_name";s:13:"always_return";}}s:4:"name";s:28:"inform_about_addon_uninstall";s:11:"description";s:87:"Get information for the user relating to an addon that they are intending to uninstall.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"Pair: warnings, files";}}s:27:"add_aggregate_type_instance";a:6:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:15:"aggregate_label";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"Label for new instance";s:11:"phpdoc_name";s:15:"aggregate_label";}i:1;a:5:{s:4:"name";s:14:"aggregate_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"What the instance is of";s:11:"phpdoc_name";s:14:"aggregate_type";}i:2;a:5:{s:4:"name";s:17:"_other_parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Additional parameters";s:11:"phpdoc_name";s:17:"_other_parameters";}i:3;a:7:{s:4:"name";s:8:"add_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:20:"Add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:4;a:7:{s:4:"name";s:9:"edit_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:32:"Edit time (null: not edited yet)";s:11:"phpdoc_name";s:9:"edit_time";}i:5;a:7:{s:4:"name";s:4:"sync";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether to activate it";s:11:"phpdoc_name";s:4:"sync";}i:6;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:27:"add_aggregate_type_instance";s:11:"description";s:31:"Add an aggregate type instance.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:22:"ID of the new instance";}}s:28:"edit_aggregate_type_instance";a:5:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:7:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:15:"aggregate_label";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"Label for instance";s:11:"phpdoc_name";s:15:"aggregate_label";}i:2;a:5:{s:4:"name";s:14:"aggregate_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"What the instance is of";s:11:"phpdoc_name";s:14:"aggregate_type";}i:3;a:5:{s:4:"name";s:17:"_other_parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Additional parameters";s:11:"phpdoc_name";s:17:"_other_parameters";}i:4;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}i:5;a:7:{s:4:"name";s:8:"add_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:29:"Add time (null: don't change)";s:11:"phpdoc_name";s:8:"add_time";}i:6;a:7:{s:4:"name";s:9:"edit_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:21:"Edit time (null: now)";s:11:"phpdoc_name";s:9:"edit_time";}}s:4:"name";s:28:"edit_aggregate_type_instance";s:11:"description";s:32:"Edit an aggregate type instance.";s:5:"flags";a:0:{}}s:30:"delete_aggregate_type_instance";a:5:{s:8:"filename";s:27:"sources/aggregate_types.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:14:"delete_matches";s:7:"default";s:13:"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 delete all associated resources";s:11:"phpdoc_name";s:14:"delete_matches";}}s:4:"name";s:30:"delete_aggregate_type_instance";s:11:"description";s:34:"Delete an aggregate type instance.";s:5:"flags";a:0:{}}s:30:"find_aggregate_type_parameters";a:6:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"aggregate_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"Aggregate type to find parameters for";s:11:"phpdoc_name";s:14:"aggregate_type";}}s:4:"name";s:30:"find_aggregate_type_parameters";s:11:"description";s:58:"Find the parameters an aggregate type needs for instances.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The aggregate type parameters";}}s:19:"_find_parameters_in";a:5:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"src_text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:4:"Text";s:11:"phpdoc_name";s:8:"src_text";}i:1;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:31:"Reference to our parameter list";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:19:"_find_parameters_in";s:11:"description";s:60:"Scan some aggregate type XML text for referenced parameters.";s:5:"flags";a:0:{}}s:19:"parse_aggregate_xml";a:6:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:14:"display_errors";s:7:"default";s:13:"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 errors should be displayed";s:11:"phpdoc_name";s:14:"display_errors";}}s:4:"name";s:19:"parse_aggregate_xml";s:11:"description";s:39:"Load the aggregate XML types structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The aggregate types";}}s:35:"resync_all_aggregate_type_instances";a:5:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:1:{i:0;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:54:"Restrict to this aggregate type (null: no restriction)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:35:"resync_all_aggregate_type_instances";s:11:"description";s:37:"Re-sync all aggregate type instances.";s:5:"flags";a:0:{}}s:28:"sync_aggregate_type_instance";a:5:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:6:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:15:"aggregate_label";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:33:"Label for instance (null: lookup)";s:11:"phpdoc_name";s:15:"aggregate_label";}i:2;a:7:{s:4:"name";s:19:"old_aggregate_label";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:37:"Old label for instance (null: lookup)";s:11:"phpdoc_name";s:19:"old_aggregate_label";}i:3;a:7:{s:4:"name";s:14:"aggregate_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:38:"What the instance is of (null: lookup)";s:11:"phpdoc_name";s:14:"aggregate_type";}i:4;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:36:"Additional parameters (null: lookup)";s:11:"phpdoc_name";s:16:"other_parameters";}i:5;a:7:{s:4:"name";s:14:"old_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:40:"Old additional parameters (null: lookup)";s:11:"phpdoc_name";s:14:"old_parameters";}}s:4:"name";s:28:"sync_aggregate_type_instance";s:11:"description";s:32:"Sync an aggregate type instance.";s:5:"flags";a:0:{}}s:11:"cor_prepare";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"cor_prepare";s:11:"description";s:30:"Prepare to inject COR headers.";s:5:"flags";a:0:{}}s:18:"crossdomain_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"crossdomain_script";s:11:"description";s:44:"Script to generate a Flash crossdomain file.";s:5:"flags";a:0:{}}s:21:"username_check_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"username_check_script";s:11:"description";s:52:"AJAX script for checking if a new username is valid.";s:5:"flags";a:0:{}}s:22:"username_exists_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"username_exists_script";s:11:"description";s:46:"AJAX script for checking if a username exists.";s:5:"flags";a:0:{}}s:15:"namelike_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"namelike_script";s:11:"description";s:62:"AJAX script for allowing username/author/search-terms home-in.";s:5:"flags";a:0:{}}s:23:"find_permissions_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"find_permissions_script";s:11:"description";s:64:"AJAX script for finding out privileges for the queried resource.";s:5:"flags";a:0:{}}s:14:"store_autosave";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"store_autosave";s:11:"description";s:33:"AJAX script to store an autosave.";s:5:"flags";a:0:{}}s:17:"retrieve_autosave";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"retrieve_autosave";s:11:"description";s:36:"AJAX script to retrieve an autosave.";s:5:"flags";a:0:{}}s:22:"fractional_edit_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"fractional_edit_script";s:11:"description";s:51:"AJAX script to make a fractional edit to some data.";s:5:"flags";a:0:{}}s:23:"change_detection_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"change_detection_script";s:11:"description";s:45:"AJAX script to tell if data has been changed.";s:5:"flags";a:0:{}}s:16:"edit_ping_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"edit_ping_script";s:11:"description";s:67:"AJAX script for recording that something is currently being edited.";s:5:"flags";a:0:{}}s:16:"ajax_tree_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"ajax_tree_script";s:11:"description";s:52:"AJAX script for dynamically extended selection tree.";s:5:"flags";a:0:{}}s:22:"confirm_session_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"confirm_session_script";s:11:"description";s:47:"AJAX script for confirming a session is active.";s:5:"flags";a:0:{}}s:20:"load_template_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"load_template_script";s:11:"description";s:75:"AJAX script for getting the text of a template, as used by a certain theme.";s:5:"flags";a:0:{}}s:12:"sheet_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"sheet_script";s:11:"description";s:41:"AJAX script for dynamic inclusion of CSS.";s:5:"flags";a:0:{}}s:13:"script_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"script_script";s:11:"description";s:48:"AJAX script for dynamic inclusion of JavaScript.";s:5:"flags";a:0:{}}s:14:"snippet_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"snippet_script";s:11:"description";s:52:"AJAX script for dynamic inclusion of XHTML snippets.";s:5:"flags";a:0:{}}s:14:"init__antispam";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__antispam";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"inject_action_spamcheck";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:2:{i:0;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:71:"Check this particular username that has just been supplied (null: none)";s:11:"phpdoc_name";s:8:"username";}i:1;a:7:{s:4:"name";s:5:"email";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:76:"Check this particular email address that has just been supplied (null: none)";s:11:"phpdoc_name";s:5:"email";}}s:4:"name";s:23:"inject_action_spamcheck";s:11:"description";s:97:"Should be called when an action happens that results in content submission. Does a spammer check.";s:5:"flags";a:0:{}}s:10:"check_rbls";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:10:"page_level";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether this is a page level check (i.e. we won't consider blocks or approval, just ban setting)";s:11:"phpdoc_name";s:10:"page_level";}i:1;a:7:{s:4:"name";s:7:"user_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:33:"IP address (null: current user's)";s:11:"phpdoc_name";s:7:"user_ip";}}s:4:"name";s:10:"check_rbls";s:11:"description";s:48:"Check RBLs to see if we need to block this user.";s:5:"flags";a:0:{}}s:9:"check_rbl";a:6:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"rbl";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The RBL domain name/IP (HTTP:BL has a special syntax)";s:11:"phpdoc_name";s:3:"rbl";}i:1;a:5:{s:4:"name";s:7:"user_ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:24:"The IP address to lookup";s:11:"phpdoc_name";s:7:"user_ip";}i:2;a:7:{s:4:"name";s:24:"we_have_a_result_already";s:7:"default";s:13:"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:"If true, then no RBL check will happen if the RBL has no scoring, because it can't provide a superior result to what is already known (performance)";s:11:"phpdoc_name";s:24:"we_have_a_result_already";}i:3;a:7:{s:4:"name";s:10:"page_level";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether this is a page level check (i.e. we won't consider blocks or approval, just ban setting)";s:11:"phpdoc_name";s:10:"page_level";}}s:4:"name";s:9:"check_rbl";s:11:"description";s:33:"Do an RBL check on an IP address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:126:"Pair: Listed for potential blocking as a ANTISPAM_RESPONSE_* constant, confidence level if attainable (0.0 to 1.0) (else null)";}}s:11:"rbl_resolve";a:6:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:3:{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:24:"The IP address to lookup";s:11:"phpdoc_name";s:2:"ip";}i:1;a:5:{s:4:"name";s:10:"rbl_domain";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The RBL domain";s:11:"phpdoc_name";s:10:"rbl_domain";}i:2;a:5:{s:4:"name";s:10:"page_level";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether this is a page level check (i.e. we won't consider blocks or approval, just ban setting)";s:11:"phpdoc_name";s:10:"page_level";}}s:4:"name";s:11:"rbl_resolve";s:11:"description";s:44:"Do an RBL lookup (low level, uninterpreted).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:27:"Return result (null: error)";}}s:38:"handle_perceived_spammer_by_confidence";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"user_ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:10:"IP address";s:11:"phpdoc_name";s:7:"user_ip";}i:1;a:5:{s:4:"name";s:16:"confidence_level";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:29:"Confidence level (0.0 to 1.0)";s:11:"phpdoc_name";s:16:"confidence_level";}i:2;a:5:{s:4:"name";s:10:"blocked_by";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"Identifier for whatever did the blocking";s:11:"phpdoc_name";s:10:"blocked_by";}i:3;a:5:{s:4:"name";s:10:"page_level";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether this is a page level check (i.e. we won't consider blocks or approval, just ban setting)";s:11:"phpdoc_name";s:10:"page_level";}}s:4:"name";s:38:"handle_perceived_spammer_by_confidence";s:11:"description";s:30:"Deal with a perceived spammer.";s:5:"flags";a:0:{}}s:19:"check_stopforumspam";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:2:{i:0;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:71:"Check this particular username that has just been supplied (null: none)";s:11:"phpdoc_name";s:8:"username";}i:1;a:7:{s:4:"name";s:5:"email";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:76:"Check this particular email address that has just been supplied (null: none)";s:11:"phpdoc_name";s:5:"email";}}s:4:"name";s:19:"check_stopforumspam";s:11:"description";s:69:"Check the stopforumspam service to see if we need to block this user.";s:5:"flags";a:0:{}}s:20:"_check_stopforumspam";a:6:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"user_ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Check this IP address";s:11:"phpdoc_name";s:7:"user_ip";}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:71:"Check this particular username that has just been supplied (null: none)";s:11:"phpdoc_name";s:8:"username";}i:2;a:7:{s:4:"name";s:5:"email";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:76:"Check this particular email address that has just been supplied (null: none)";s:11:"phpdoc_name";s:5:"email";}}s:4:"name";s:20:"_check_stopforumspam";s:11:"description";s:106:"Check the stopforumspam service to see if we need to block this user (lower level, doesn't handle result).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:126:"Pair: Listed for potential blocking as a ANTISPAM_RESPONSE_* constant, confidence level if attainable (0.0 to 1.0) (else null)";}}s:17:"render_attachment";a:6:{s:8:"filename";s:23:"sources/attachments.php";s:10:"parameters";a:10:{i:0;a:6:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The attachment tag";s:11:"phpdoc_name";s:3:"tag";s:3:"set";s:26:"attachment attachment_safe";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:47:"A map of the attributes (name=>val) for the tag";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:14:"attachment_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:65:"A map of the attachment properties (name=>val) for the attachment";s:11:"phpdoc_name";s:14:"attachment_row";}i:3;a:5:{s:4:"name";s:7:"pass_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:100:"A special identifier to mark where the resultant Tempcode is going to end up (e.g. the ID of a post)";s:11:"phpdoc_name";s:7:"pass_id";}i:4;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:6;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:7;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:8;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}i:9;a:7:{s:4:"name";s:14:"semiparse_mode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:199:"Whether to parse so as to create something that would fit inside a semihtml tag. It means we generate HTML, with Comcode written into it where the tag could never be reverse-converted (e.g. a block).";s:11:"phpdoc_name";s:14:"semiparse_mode";}}s:4:"name";s:17:"render_attachment";s:11:"description";s:49:"Get Tempcode for a Comcode rich-media attachment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:31:"The Tempcode for the attachment";}}s:21:"has_attachment_access";a:6:{s:8:"filename";s:23:"sources/attachments.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}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:44:"The ID code for the attachment being checked";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:10:"connection";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:46:"The database connection to use (null: site DB)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:21:"has_attachment_access";s:11:"description";s:73:"Find if the specified member has access to view the specified attachment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the member has attachment access";}}s:18:"attachments_script";a:5:{s:8:"filename";s:23:"sources/attachments.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"attachments_script";s:11:"description";s:42:"Show the image of an attachment/thumbnail.";s:5:"flags";a:0:{}}s:23:"attachment_popup_script";a:5:{s:8:"filename";s:23:"sources/attachments.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"attachment_popup_script";s:11:"description";s:75:"Shows an HTML page of all attachments we can access with selection buttons.";s:5:"flags";a:0:{}}s:22:"do_comcode_attachments";a:6:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:52:"The unparsed Comcode that references the attachments";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"The type the attachment will be used for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The ID the attachment will be used for";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:15:"previewing_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:71:"Whether we are only previewing the attachments (i.e. don't store them!)";s:11:"phpdoc_name";s:15:"previewing_only";}i:4;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:5;a:7:{s:4:"name";s:15:"insert_as_admin";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:115:"Whether to insert it as an admin (any Comcode parsing will be carried out with admin privileges) (null: autodetect)";s:11:"phpdoc_name";s:15:"insert_as_admin";}i:6;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:66:"The member to use for ownership permissions (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}}s:4:"name";s:22:"do_comcode_attachments";s:11:"description";s:274:"Get an array containing new Comcode, and Tempcode. The function wraps the normal comcode_to_tempcode function. The function will do attachment management, including deleting of attachments that have become unused due to editing of some Comcode and removing of the reference.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"A map containing 'Comcode' (after substitution for tying down the new attachments) and 'tempcode'";}}s:28:"_handle_data_url_attachments";a:5:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:11:"Our Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"The type the attachment will be used for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The ID the attachment will be used for";s:11:"phpdoc_name";s:2:"id";}i:3;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:28:"_handle_data_url_attachments";s:11:"description";s:104:"Convert attachments embedded as data URLs (usually the result of pasting in) to real attachment Comcode.";s:5:"flags";a:0:{}}s:29:"_handle_attachment_extraction";a:5:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:11:"Our Comcode";s:11:"phpdoc_name";s:7:"comcode";}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:23:"The attachment file key";s:11:"phpdoc_name";s:3:"key";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"The type the attachment will be used for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The ID the attachment will be used for";s:11:"phpdoc_name";s:2:"id";}i:4;a:5:{s:4:"name";s:15:"matches_extract";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:114:"Reg-exp grabbed parameters from the extract marker attachment (we will re-use them for each individual attachment)";s:11:"phpdoc_name";s:15:"matches_extract";}i:5;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:29:"_handle_attachment_extraction";s:11:"description";s:71:"Convert attachments marked for 'extraction' to real attachment Comcode.";s:5:"flags";a:0:{}}s:23:"_check_attachment_count";a:5:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_check_attachment_count";s:11:"description";s:81:"Check that not too many attachments have been uploaded for the member submitting.";s:5:"flags";a:0:{}}s:31:"insert_lang_comcode_attachments";a:6:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:8:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}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:50:"The level of importance this language string holds";s:11:"phpdoc_name";s:5:"level";s:3:"set";s:7:"1 2 3 4";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:19:"The Comcode content";s:11:"phpdoc_name";s:4:"text";}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:59:"The arbitrary type that the attached is for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:4;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:5;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:6;a:7:{s:4:"name";s:15:"insert_as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether to insert it as an admin (any Comcode parsing will be carried out with admin privileges)";s:11:"phpdoc_name";s:15:"insert_as_admin";}i:7;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:66:"The member to use for ownership permissions (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}}s:4:"name";s:31:"insert_lang_comcode_attachments";s:11:"description";s:92:"Insert some Comcode content that may contain attachments, and return the language string ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:30:"final_attachments_from_preview";a:5:{s:8:"filename";s:24:"sources/attachments2.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:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:30:"final_attachments_from_preview";s:11:"description";s:101:"Finalise attachments which were created during a preview, so that they have the proper reference IDs.";s:5:"flags";a:0:{}}s:31:"update_lang_comcode_attachments";a:6:{s:8:"filename";s:24:"sources/attachments3.php";s:10:"parameters";a:7:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:7:"lang_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"The language string";s:11:"phpdoc_name";s:7:"lang_id";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:12:"The new text";s:11:"phpdoc_name";s:4:"text";}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:59:"The arbitrary type that the attached is for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:4;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:5;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:6;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:67:"The member that owns the content this is for (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}}s:4:"name";s:31:"update_lang_comcode_attachments";s:11:"description";s:96:"Update a language string, in such a way that new attachments are created if they were specified.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:31:"The language string save fields";}}s:18:"_delete_attachment";a:5:{s:8:"filename";s:24:"sources/attachments3.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:27:"The attachment ID to delete";s:11:"phpdoc_name";s:2:"id";}i:1;a:6:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";s:3:"set";s:9:"cms forum";}}s:4:"name";s:18:"_delete_attachment";s:11:"description";s:31:"Delete the specified attachment";s:5:"flags";a:0:{}}s:26:"delete_comcode_attachments";a:5:{s:8:"filename";s:24:"sources/attachments3.php";s:10:"parameters";a:4:{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:59:"The arbitrary type that the attached is for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:3;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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:"Whether to force this, regardless of config";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:26:"delete_comcode_attachments";s:11:"description";s:162:"Deletes all the attachments a given language string holds. Well, not quite! It deletes all references, and any attachments have through it, run out of references.";s:5:"flags";a:0:{}}s:31:"delete_lang_comcode_attachments";a:5:{s:8:"filename";s:24:"sources/attachments3.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"lang_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"The language string";s:11:"phpdoc_name";s:7:"lang_id";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:59:"The arbitrary type that the attached is for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:31:"delete_lang_comcode_attachments";s:11:"description";s:108:"This function is the same as delete_comcode_attachments, except that it deletes the language string as well.";s:5:"flags";a:0:{}}s:17:"render_author_box";a:6:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:4:{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:10:"Author row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:17:"render_author_box";s:11:"description";s:21:"Render an author box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The author box";}}s:14:"authors_script";a:5:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"authors_script";s:11:"description";s:44:"Shows an HTML page of all authors clickably.";s:5:"flags";a:0:{}}s:23:"get_author_id_from_name";a:6:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of an author";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:23:"get_author_id_from_name";s:11:"description";s:101:"Get a member ID from an author name. First by trying authors table, second by trying forum usernames.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:32:"The member ID (null: none found)";}}s:10:"add_author";a:5:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of an author";s:11:"phpdoc_name";s:6:"author";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the authors home page";s:11:"phpdoc_name";s:3:"url";}i:2;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:52:"The member ID of the author (null: no forum profile)";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"A description of the author";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:6:"skills";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"A terse string showing author skills";s:11:"phpdoc_name";s:6:"skills";}i:5;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:6;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:10:"add_author";s:11:"description";s:207:"Adds an author (re-creating them if they already exist - thus it also serves to edit; the reason for this is the fluidity of authors - members are automatically authors even before an author profile is made)";s:5:"flags";a:0:{}}s:13:"delete_author";a:5:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of an author";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:13:"delete_author";s:11:"description";s:16:"Delete an author";s:5:"flags";a:0:{}}s:26:"has_edit_author_permission";a:6:{s:8:"filename";s:19:"sources/authors.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"An author";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:26:"has_edit_author_permission";s:11:"description";s:61:"Find if a member's usergroup has permission to edit an author";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether the member can edit this author";}}s:28:"has_delete_author_permission";a:6:{s:8:"filename";s:19:"sources/authors.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"An author";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:28:"has_delete_author_permission";s:11:"description";s:63:"Find if a member's usergroup has permission to delete an author";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether the member can edit this author";}}s:13:"merge_authors";a:5:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The first author (being removed effectively)";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:7:"ID_TEXT";s:11:"description";s:39:"The second author (subsuming the first)";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:13:"merge_authors";s:11:"description";s:18:"Merge two authors.";s:5:"flags";a:0:{}}s:18:"clear_cms_autosave";a:5:{s:8:"filename";s:20:"sources/autosave.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"clear_cms_autosave";s:11:"description";s:66:"Declare that an action succeeded - delete safety autosave cookies.";s:5:"flags";a:0:{}}s:15:"find_awards_for";a:6:{s:8:"filename";s:18:"sources/awards.php";s:10:"parameters";a:2:{i:0;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:22:"The award content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"find_awards_for";s:11:"description";s:45:"Get details of awards won for a content item.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"List of awards won";}}s:10:"give_award";a:5:{s:8:"filename";s:18:"sources/awards.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"award_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The award ID";s:11:"phpdoc_name";s:8:"award_id";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;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:36:"Time the award was given (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:10:"give_award";s:11:"description";s:14:"Give an award.";s:5:"flags";a:0:{}}s:16:"get_award_fields";a:6:{s:8:"filename";s:18:"sources/awards.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:16:"The content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;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:79:"The content ID (null: not added yet - therefore can't be holding the award yet)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:16:"get_award_fields";s:11:"description";s:68:"Get all the award selection fields for a content type and content ID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The fields";}}s:20:"handle_award_setting";a:5:{s:8:"filename";s:18:"sources/awards.php";s:10:"parameters";a:2:{i:0;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:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"handle_award_setting";s:11:"description";s:103:"Situation: something that may have awards has just been added/edited. Action: add any specified awards.";s:5:"flags";a:0:{}}s:14:"add_award_type";a:6:{s:8:"filename";s:19:"sources/awards2.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:10:"SHORT_TEXT";s:11:"description";s:9:"The 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:9:"LONG_TEXT";s:11:"description";s:15:"The description";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:6:"points";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:3;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:38:"The content type the award type is for";s:11:"phpdoc_name";s:12:"content_type";}i:4;a:5:{s:4:"name";s:12:"hide_awardee";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:58:"Whether to not show the awardee when displaying this award";s:11:"phpdoc_name";s:12:"hide_awardee";}i:5;a:5:{s:4:"name";s:17:"update_time_hours";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:14:"add_award_type";s:11:"description";s:19:"Make an award type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:15:"edit_award_type";a:5:{s:8:"filename";s:19:"sources/awards2.php";s:10:"parameters";a:7:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:6:"points";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:5:{s:4:"name";s:12:"content_type";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:5:{s:4:"name";s:12:"hide_awardee";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:58:"Whether to not show the awardee when displaying this award";s:11:"phpdoc_name";s:12:"hide_awardee";}i:6;a:5:{s:4:"name";s:17:"update_time_hours";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:"edit_award_type";s:11:"description";s:18:"Edit an award type";s:5:"flags";a:0:{}}s:17:"delete_award_type";a:5:{s:8:"filename";s:19:"sources/awards2.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"delete_award_type";s:11:"description";s:21:"Delete an award type.";s:5:"flags";a:0:{}}s:16:"get_table_backup";a:5:{s:8:"filename";s:18:"sources/backup.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"log_file";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:23:"The logfile to write to";s:11:"phpdoc_name";s:8:"log_file";}i:1;a:5:{s:4:"name";s:7:"db_meta";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The meta tablename";s:11:"phpdoc_name";s:7:"db_meta";}i:2;a:5:{s:4:"name";s:15:"db_meta_indices";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The index-meta tablename";s:11:"phpdoc_name";s:15:"db_meta_indices";}i:3;a:5:{s:4:"name";s:16:"install_php_file";s:3:"ref";b:1;s:4:"type";s:8:"resource";s:11:"description";s:19:"File to write in to";s:11:"phpdoc_name";s:16:"install_php_file";}}s:4:"name";s:16:"get_table_backup";s:11:"description";s:62:"Write PHP code for the restoration of database data into file.";s:5:"flags";a:0:{}}s:11:"make_backup";a:6:{s:8:"filename";s:18:"sources/backup.php";s:10:"parameters";a:3:{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:25:"The filename to backup to";s:11:"phpdoc_name";s:4:"file";}i:1;a:8:{s:4:"name";s:6:"b_type";s:7:"default";s:4:"full";s:11:"default_raw";s:6:"'full'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The type of backup to do";s:11:"phpdoc_name";s:6:"b_type";s:3:"set";s:16:"full incremental";}i:2;a:7:{s:4:"name";s:8:"max_size";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:51:"The maximum size of a file to include in the backup";s:11:"phpdoc_name";s:8:"max_size";}}s:4:"name";s:11:"make_backup";s:11:"description";s:32:"Backend function to do a backup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Success message";}}s:21:"directories_to_backup";a:6:{s:8:"filename";s:18:"sources/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"directories_to_backup";s:11:"description";s:198:"Find which directories to backup.We only backup directories that we know as Composr ones (users put all kinds of stuff in root directories that would not be feasible to include in the backup scope).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:31:"A list of directories to backup";}}s:21:"deliver_remote_backup";a:5:{s:8:"filename";s:18:"sources/backup.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:6:"string";s:11:"description";s:12:"File to send";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:21:"deliver_remote_backup";s:11:"description";s:33:"Send a backup to a remote server.";s:5:"flags";a:0:{}}s:13:"init__banners";a:5:{s:8:"filename";s:19:"sources/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__banners";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"banner_select_sql";a:6:{s:8:"filename";s:19:"sources/banners.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:6:"b_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:41:"The banner type needed (null: don't care)";s:11:"phpdoc_name";s:6:"b_type";}i:1;a:7:{s:4:"name";s:12:"do_type_join";s:7:"default";s:13:"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:"If we want the banner type row joined in";s:11:"phpdoc_name";s:12:"do_type_join";}i:2;a:7:{s:4:"name";s:15:"banner_to_avoid";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:57:"Do not show this specific banner (null: none to not show)";s:11:"phpdoc_name";s:15:"banner_to_avoid";}i:3;a:7:{s:4:"name";s:6:"region";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:"Region to show for (null: auto-detect)";s:11:"phpdoc_name";s:6:"region";}}s:4:"name";s:17:"banner_select_sql";s:11:"description";s:41:"Get SQL for selecting appropriate banners";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Banner selection SQL";}}s:14:"banners_script";a:6:{s:8:"filename";s:19:"sources/banners.php";s:10:"parameters";a:8:{i:0;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:49:"Whether to return a result rather than outputting";s:11:"phpdoc_name";s:3:"ret";}i:1;a:8:{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:7:"?string";s:11:"description";s:72:"Whether we are displaying or click-processing (null: get from URL param)";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:10:""click" """;}i:2;a:7:{s:4:"name";s:4:"dest";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:72:"Specific banner to display (null: get from URL param) (blank: randomise)";s:11:"phpdoc_name";s:4:"dest";}i:3;a:7:{s:4:"name";s:6:"b_type";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:49:"Banner type to display (null: get from URL param)";s:11:"phpdoc_name";s:6:"b_type";}i:4;a:7:{s:4:"name";s:6:"source";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:157:"The banner advertisor who is actively displaying the banner (calling up this function) and hence is rewarded (null: get from URL param) (blank: our own site)";s:11:"phpdoc_name";s:6:"source";}i:5;a:7:{s:4:"name";s:5:"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:42:"The width (null: standard for banner type)";s:11:"phpdoc_name";s:5:"width";}i:6;a:7:{s:4:"name";s:6:"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:43:"The height (null: standard for banner type)";s:11:"phpdoc_name";s:6:"height";}i:7;a:7:{s:4:"name";s:6:"region";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:"Region to show for (null: auto-detect)";s:11:"phpdoc_name";s:6:"region";}}s:4:"name";s:14:"banners_script";s:11:"description";s:55:"Show a banner according to GET parameter specification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:52:"Result (null: we weren't asked to return the result)";}}s:11:"show_banner";a:6:{s:8:"filename";s:19:"sources/banners.php";s:10:"parameters";a:11:{i:0;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 banner";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:10:"title_text";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:63:"The title text of the banner (displayed for a text banner only)";s:11:"phpdoc_name";s:10:"title_text";}i:2;a:5:{s:4:"name";s:7:"caption";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:25:"The caption of the banner";s:11:"phpdoc_name";s:7:"caption";}i:3;a:5:{s:4:"name";s:11:"direct_code";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The full HTML/PHP for the banner";s:11:"phpdoc_name";s:11:"direct_code";}i:4;a:5:{s:4:"name";s:7:"img_url";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:7:"img_url";}i:5;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:78:"The name of the banner for the site that will get the return-hit (blank: none)";s:11:"phpdoc_name";s:6:"source";}i:6;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the banner's target";s:11:"phpdoc_name";s:3:"url";}i:7;a:5:{s:4:"name";s:6:"b_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The banner type";s:11:"phpdoc_name";s:6:"b_type";}i:8;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 submitting user";s:11:"phpdoc_name";s:9:"submitter";}i:9;a:7:{s:4:"name";s:5:"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:42:"The width (null: standard for banner type)";s:11:"phpdoc_name";s:5:"width";}i:10;a:7:{s:4:"name";s:6:"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:43:"The height (null: standard for banner type)";s:11:"phpdoc_name";s:6:"height";}}s:4:"name";s:11:"show_banner";s:11:"description";s:55:"Get the Tempcode for the display of the defined banner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The rendered banner";}}s:22:"render_banner_type_box";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:4:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:22:"render_banner_type_box";s:11:"description";s:62:"Get Tempcode for a banner type 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:17:"render_banner_box";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:4:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:17:"render_banner_box";s:11:"description";s:57:"Get Tempcode for a banner 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:34:"create_selection_list_banner_types";a:6:{s:8:"filename";s:20:"sources/banners2.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:6:"?mixed";s:11:"description";s:56:"The currently selected banner type (null: none selected)";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:34:"create_selection_list_banner_types";s:11:"description";s:56:"Get a nice, formatted XHTML list to select a banner type";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The list of banner types";}}s:29:"create_selection_list_banners";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:2:{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:68:"The ID of the banner selected by default (null: no specific default)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:10:"only_owned";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:65:"Only show banners owned by the member (null: no such restriction)";s:11:"phpdoc_name";s:10:"only_owned";}}s:4:"name";s:29:"create_selection_list_banners";s:11:"description";s:22:"Get a list of banners.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:22:"get_banner_form_fields";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:17:{i:0;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:74:"Whether to simplify the banner interface (for the Point Store buy process)";s:11:"phpdoc_name";s:10:"simplified";}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:7:"ID_TEXT";s:11:"description";s:22:"The name of the banner";s:11:"phpdoc_name";s:4:"name";}i:2;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:3;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:4;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:5;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: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:36:"Any notes associated with the banner";s:11:"phpdoc_name";s:5:"notes";}i:7;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:8;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:9;a:8:{s:4:"name";s:8:"the_type";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:56:"The type of banner (0=permanent, 1=campaign, 2=fallback)";s:11:"phpdoc_name";s:8:"the_type";s:3:"set";s:5:"0 1 2";}i:10;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:11;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:12;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:13;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:14;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:15;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:16;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:22:"get_banner_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:49:"A pair: The input field Tempcode, JavaScript code";}}s:12:"check_banner";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:6:{i:0;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";}i:1;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:2;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:3;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:4;a:7:{s:4:"name";s:14:"url_param_name";s:7:"default";s:9:"image_url";s:11:"default_raw";s:11:"'image_url'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Param name for possible URL field";s:11:"phpdoc_name";s:14:"url_param_name";}i:5;a:7:{s:4:"name";s:15:"file_param_name";s:7:"default";s:4:"file";s:11:"default_raw";s:6:"'file'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"Param name for possible upload field";s:11:"phpdoc_name";s:15:"file_param_name";}}s:4:"name";s:12:"check_banner";s:11:"description";s:35:"Check the uploaded banner is valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:35:"A pair: The URL, and the title text";}}s:10:"add_banner";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:23:{i:0;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 banner";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"imgurl";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:6:"imgurl";}i:2;a:5:{s:4:"name";s:10:"title_text";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";}i:3;a:5:{s:4:"name";s:7:"caption";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:5:{s:4:"name";s:11:"direct_code";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:6:{s:4:"name";s:17:"campaignremaining";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:6;a:5:{s:4:"name";s:8:"site_url";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:7;a:6:{s:4:"name";s:17:"importancemodulus";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:8;a:5:{s:4:"name";s:5:"notes";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:9;a:6:{s:4:"name";s:8:"the_type";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:10;a:5:{s:4:"name";s:11:"expiry_date";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:36:"The banner expiry date (null: never)";s:11:"phpdoc_name";s:11:"expiry_date";}i:11;a:5:{s:4:"name";s:9:"submitter";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:12;a:7:{s:4:"name";s:9:"validated";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 the banner has been validated";s:11:"phpdoc_name";s:9:"validated";}i:13;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:14;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:15;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:16;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:41:"The time the banner was added (null: now)";s:11:"phpdoc_name";s:4:"time";}i:17;a:7:{s:4:"name";s:9:"hits_from";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:48:"The number of return hits from this banners site";s:11:"phpdoc_name";s:9:"hits_from";}i:18;a:7:{s:4:"name";s:7:"hits_to";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:46:"The number of banner hits to this banners site";s:11:"phpdoc_name";s:7:"hits_to";}i:19;a:7:{s:4:"name";s:10:"views_from";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:49:"The number of return views from this banners site";s:11:"phpdoc_name";s:10:"views_from";}i:20;a:7:{s:4:"name";s:8:"views_to";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:47:"The number of banner views to this banners site";s:11:"phpdoc_name";s:8:"views_to";}i:21;a:7:{s:4:"name";s:9:"edit_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:34:"The banner edit date (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:22;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:10:"add_banner";s:11:"description";s:83:"Add a banner to the database, and return the new ID of that banner in the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:11:"edit_banner";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:21:{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:30:"The current name of the banner";s:11:"phpdoc_name";s:8:"old_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:26:"The new name of the banner";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:6:"imgurl";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:6:"imgurl";}i:3;a:5:{s:4:"name";s:10:"title_text";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";}i:4;a:5:{s:4:"name";s:7:"caption";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:5;a:5:{s:4:"name";s:11:"direct_code";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:6;a:6:{s:4:"name";s:17:"campaignremaining";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:7;a:5:{s:4:"name";s:8:"site_url";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:8;a:6:{s:4:"name";s:17:"importancemodulus";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:9;a:5:{s:4:"name";s:5:"notes";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:10;a:6:{s:4:"name";s:8:"the_type";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:11;a:5:{s:4:"name";s:11:"expiry_date";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:36:"The banner expiry date (null: never)";s:11:"phpdoc_name";s:11:"expiry_date";}i:12;a:5:{s:4:"name";s:9:"submitter";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"The banners submitter (null: leave unchanged)";s:11:"phpdoc_name";s:9:"submitter";}i:13;a:5:{s:4:"name";s:9:"validated";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:14;a:5:{s:4:"name";s:6:"b_type";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:15;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:16;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:17;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:18;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:19;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}i:20;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:11:"edit_banner";s:11:"description";s:14:"Edit a banner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:13:"delete_banner";a:5:{s:8:"filename";s:20:"sources/banners2.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:7:"ID_TEXT";s:11:"description";s:22:"The name of the banner";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:13:"delete_banner";s:11:"description";s:16:"Delete a banner.";s:5:"flags";a:0:{}}s:15:"add_banner_type";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:7:{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:25:"The ID of the banner type";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"is_textual";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:5:{s:4:"name";s:11:"image_width";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:5:{s:4:"name";s:12:"image_height";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:5:{s:4:"name";s:13:"max_file_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:96:"The maximum file size for the banners in Kilobytes (this is a string length for textual banners)";s:11:"phpdoc_name";s:13:"max_file_size";}i:5;a:5:{s:4:"name";s:14:"comcode_inline";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";}i:6;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:15:"add_banner_type";s:11:"description";s:18:"Add a banner type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:16:"edit_banner_type";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:8:{i:0;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:34:"The original ID of the banner type";s:11:"phpdoc_name";s:6:"old_id";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The ID of the banner type";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:10:"is_textual";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:3;a:5:{s:4:"name";s:11:"image_width";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:4;a:5:{s:4:"name";s:12:"image_height";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:5;a:5:{s:4:"name";s:13:"max_file_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:96:"The maximum file size for the banners in Kilobytes (this is a string length for textual banners)";s:11:"phpdoc_name";s:13:"max_file_size";}i:6;a:5:{s:4:"name";s:14:"comcode_inline";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";}i:7;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:16:"edit_banner_type";s:11:"description";s:19:"Edit a banner type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:18:"delete_banner_type";a:5:{s:8:"filename";s:20:"sources/banners2.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:25:"The ID of the banner type";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"delete_banner_type";s:11:"description";s:21:"Delete a banner type.";s:5:"flags";a:0:{}}s:19:"block_helper_script";a:5:{s:8:"filename";s:21:"sources/block_add.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"block_helper_script";s:11:"description";s:44:"Shows an HTML page for making block Comcode.";s:5:"flags";a:0:{}}s:26:"block_bottom_rss__cache_on";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:21:"The block parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:26:"block_bottom_rss__cache_on";s:11:"description";s:39:"Find the cache signature for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The cache signature.";}}s:24:"block_main_rss__cache_on";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:21:"The block parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:24:"block_main_rss__cache_on";s:11:"description";s:39:"Find the cache signature for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The cache signature.";}}s:32:"staff_checklist_time_ago_and_due";a:6:{s:8:"filename";s:39:"sources/blocks/main_staff_checklist.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"seconds_ago";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:163:"The number of seconds ago since it last happened (null: never happened) OR If $recur_hours is null then the number of seconds until it happens (null: won't happen)";s:11:"phpdoc_name";s:11:"seconds_ago";}i:1;a:7:{s:4:"name";s:11:"recur_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:62:"It should be done every this many hours (null: never happened)";s:11:"phpdoc_name";s:11:"recur_hours";}}s:4:"name";s:32:"staff_checklist_time_ago_and_due";s:11:"description";s:57:"Work out when an action should happen, and last happened.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:91:"A pair: Tempcode to display, and the number of seconds to go until the action should happen";}}s:20:"block_menu__cache_on";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:21:"The block parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:20:"block_menu__cache_on";s:11:"description";s:39:"Find the cache signature for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The cache signature.";}}s:24:"block_side_rss__cache_on";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:21:"The block parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:24:"block_side_rss__cache_on";s:11:"description";s:39:"Find the cache signature for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The cache signature.";}}s:31:"block_params_to_block_signature";a:6:{s:8:"filename";s:18:"sources/blocks.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:14:"The parameters";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:31:"block_params_to_block_signature";s:11:"description";s:56:"Convert the parameters for a block, to a regexp pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The parameters, as a pattern";}}s:21:"block_signature_check";a:6:{s:8:"filename";s:18:"sources/blocks.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"allowed";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:32:"The acceptable parameter pattern";s:11:"phpdoc_name";s:7:"allowed";}i:1;a:5:{s:4:"name";s:4:"used";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The given parameters";s:11:"phpdoc_name";s:4:"used";}}s:4:"name";s:21:"block_signature_check";s:11:"description";s:51:"Check whether some block parameters are acceptable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:6:"Answer";}}s:16:"bookmarks_script";a:5:{s:8:"filename";s:21:"sources/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"bookmarks_script";s:11:"description";s:41:"Script to make a bookmark add-form popup.";s:5:"flags";a:0:{}}s:17:"add_bookmark_form";a:6:{s:8:"filename";s:21:"sources/bookmarks.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"post_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:27:"Where the form should go to";s:11:"phpdoc_name";s:8:"post_url";}}s:4:"name";s:17:"add_bookmark_form";s:11:"description";s:49:"Get the form to add a bookmark / set breadcrumbs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The form";}}s:12:"add_bookmark";a:6:{s:8:"filename";s:21:"sources/bookmarks.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:28:"Member who it will belong to";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:6:"folder";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"Folder (blank: root)";s:11:"phpdoc_name";s:6:"folder";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Title/caption";s:11:"phpdoc_name";s:5:"title";}i:3;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The page-link or URL";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:12:"add_bookmark";s:11:"description";s:15:"Add a bookmark.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:13:"edit_bookmark";a:5:{s:8:"filename";s:21:"sources/bookmarks.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:9:"AUTO_LINK";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:24:"Member who it belongs to";s:11:"phpdoc_name";s:6:"member";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Title/caption";s:11:"phpdoc_name";s:5:"title";}i:3;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:13:"edit_bookmark";s:11:"description";s:16:"Edit a bookmark.";s:5:"flags";a:0:{}}s:15:"delete_bookmark";a:5:{s:8:"filename";s:21:"sources/bookmarks.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;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:45:"Member who it belongs to (null: do not check)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"delete_bookmark";s:11:"description";s:18:"Delete a bookmark.";s:5:"flags";a:0:{}}s:29:"load_breadcrumb_substitutions";a:6:{s:8:"filename";s:23:"sources/breadcrumbs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"segments";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The default breadcrumb segments";s:11:"phpdoc_name";s:8:"segments";}}s:4:"name";s:29:"load_breadcrumb_substitutions";s:11:"description";s:50:"Load all breadcrumb substitutions and return them.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"The adjusted breadcrumb segments";}}s:12:"init__caches";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__caches";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:20:"persistent_cache_get";a:6:{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:5:"mixed";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:20:"persistent_cache_get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:20:"persistent_cache_set";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:11:"server_wide";s:7:"default";s:13:"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 it is server-wide data";s:11:"phpdoc_name";s:11:"server_wide";}i:3;a:7:{s:4:"name";s:11:"expire_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:100:"The expiration time in seconds. (null: Default expiry in 60 minutes, or never if it is server-wide).";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:20:"persistent_cache_set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:23:"persistent_cache_delete";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:5:"mixed";s:11:"description";s:8:"Key name";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:9:"substring";s:7:"default";s:13:"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 we are deleting via substring";s:11:"phpdoc_name";s:9:"substring";}}s:4:"name";s:23:"persistent_cache_delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:22:"erase_persistent_cache";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"erase_persistent_cache";s:11:"description";s:59:"Remove all data from the persistent cache and static cache.";s:5:"flags";a:0:{}}s:15:"has_caching_for";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:1:{i:0;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Cache type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:32:"block lang comcode_page template";}}s:4:"name";s:15:"has_caching_for";s:11:"description";s:35:"Check to see if caching is enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether it has the caching";}}s:7:"decache";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"cached_for";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:132:"The type of what we are caching (e.g. block name) (ID_TEXT or an array of ID_TEXT, the array may be pairs re-specifying $identifier)";s:11:"phpdoc_name";s:10:"cached_for";}i:1;a:7:{s:4:"name";s:10:"identifier";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:89:"A map of identifiying characteristics (null: no identifying characteristics, decache all)";s:11:"phpdoc_name";s:10:"identifier";}i:2;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:43:"Member to only decache for (null: no limit)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:7:"decache";s:11:"description";s:70:"Remove an item from the general cache (most commonly used for blocks).";s:5:"flags";a:0:{}}s:13:"find_cache_on";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The codename of what will be checked for caching";s:11:"phpdoc_name";s:8:"codename";}}s:4:"name";s:13:"find_cache_on";s:11:"description";s:114:"Find the cache-on parameters for 'codename's caching style (prevents us needing to load up extra code to find it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"The cached result (null: no cached result)";}}s:15:"get_cache_entry";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The codename to check for caching";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:16:"cache_identifier";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:41:"The further restraints (a serialized map)";s:11:"phpdoc_name";s:16:"cache_identifier";}i:2;a:5:{s:4:"name";s:19:"special_cache_flags";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Special cache flags";s:11:"phpdoc_name";s:19:"special_cache_flags";}i:3;a:7:{s:4:"name";s:3:"ttl";s:7:"default";i:10000;s:11:"default_raw";s:5:"10000";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:55:"The TTL for the cache entry. Defaults to a very big ttl";s:11:"phpdoc_name";s:3:"ttl";}i:4;a:7:{s:4:"name";s:8:"tempcode";s:7:"default";s:13:"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 caching Tempcode (needs special care)";s:11:"phpdoc_name";s:8:"tempcode";}i:5;a:7:{s:4:"name";s:16:"caching_via_cron";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:179:"Whether to defer caching to CRON. Note that this option only works if the block's defined cache signature depends only on $map (timezone and bot-type are automatically considered)";s:11:"phpdoc_name";s:16:"caching_via_cron";}i:6;a:7:{s:4:"name";s:3:"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:73:"Parameters to call up block with if we have to defer caching (null: none)";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:15:"get_cache_entry";s:11:"description";s:80:"Find the cached result of what is named by codename and the further constraints.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:42:"The cached result (null: no cached result)";}}s:18:"_get_cache_entries";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"dets";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:65:"An array of tuples of parameters (as per get_cache_entry, almost)";s:11:"phpdoc_name";s:4:"dets";}i:1;a:7:{s:4:"name";s:19:"special_cache_flags";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:35:"Special cache flags (null: unknown)";s:11:"phpdoc_name";s:19:"special_cache_flags";}}s:4:"name";s:18:"_get_cache_entries";s:11:"description";s:72:"Ability to do multiple get_cache_entry at once, for performance reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"Array of results";}}s:8:"_decache";a:5:{s:8:"filename";s:19:"sources/caches2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"cached_for";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:132:"The type of what we are caching (e.g. block name) (ID_TEXT or an array of ID_TEXT, the array may be pairs re-specifying $identifier)";s:11:"phpdoc_name";s:10:"cached_for";}i:1;a:7:{s:4:"name";s:10:"identifier";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:89:"A map of identifiying characteristics (null: no identifying characteristics, decache all)";s:11:"phpdoc_name";s:10:"identifier";}i:2;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:43:"Member to only decache for (null: no limit)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:8:"_decache";s:11:"description";s:70:"Remove an item from the general cache (most commonly used for blocks).";s:5:"flags";a:0:{}}s:16:"request_via_cron";a:5:{s:8:"filename";s:19:"sources/caches2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The codename of the block";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:73:"Parameters to call up block with if we have to defer caching (null: none)";s:11:"phpdoc_name";s:3:"map";}i:2;a:5:{s:4:"name";s:19:"special_cache_flags";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:38:"Flags representing how we should cache";s:11:"phpdoc_name";s:19:"special_cache_flags";}i:3;a:5:{s:4:"name";s:8:"tempcode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether we are caching Tempcode (needs special care)";s:11:"phpdoc_name";s:8:"tempcode";}}s:4:"name";s:16:"request_via_cron";s:11:"description";s:63:"Request that CRON loads up a block's caching in the background.";s:5:"flags";a:0:{}}s:14:"put_into_cache";a:5:{s:8:"filename";s:19:"sources/caches2.php";s:10:"parameters";a:15:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:11:"MINIID_TEXT";s:11:"description";s:33:"The codename to check for caching";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:3:"ttl";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:42:"The TTL of what is being cached in minutes";s:11:"phpdoc_name";s:3:"ttl";}i:2;a:5:{s:4:"name";s:16:"cache_identifier";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:93:"The requisite situational information (a serialized map) [-> further restraints when reading]";s:11:"phpdoc_name";s:16:"cache_identifier";}i:3;a:5:{s:4:"name";s:12:"staff_status";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:53:"Staff status to limit to (null: Not limiting by this)";s:11:"phpdoc_name";s:12:"staff_status";}i:4;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:47:"Member to limit to (null: Not limiting by this)";s:11:"phpdoc_name";s:6:"member";}i:5;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:74:"Sorted permissive usergroup list to limit to (blank: Not limiting by this)";s:11:"phpdoc_name";s:6:"groups";}i:6;a:5:{s:4:"name";s:6:"is_bot";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:51:"Bot status to limit to (null: Not limiting by this)";s:11:"phpdoc_name";s:6:"is_bot";}i:7;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:11:"MINIID_TEXT";s:11:"description";s:50:"Timezone to limit to (blank: Not limiting by this)";s:11:"phpdoc_name";s:8:"timezone";}i:8;a:5:{s:4:"name";s:5:"cache";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:25:"The result we are caching";s:11:"phpdoc_name";s:5:"cache";}i:9;a:7:{s:4:"name";s:15:"_langs_required";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:106:"A list of the language files that need loading to use Tempcode embedded in the cache (null: none required)";s:11:"phpdoc_name";s:15:"_langs_required";}i:10;a:7:{s:4:"name";s:21:"_javascripts_required";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:108:"A list of the javascript files that need loading to use Tempcode embedded in the cache (null: none required)";s:11:"phpdoc_name";s:21:"_javascripts_required";}i:11;a:7:{s:4:"name";s:14:"_csss_required";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:101:"A list of the css files that need loading to use Tempcode embedded in the cache (null: none required)";s:11:"phpdoc_name";s:14:"_csss_required";}i:12;a:7:{s:4:"name";s:8:"tempcode";s:7:"default";s:13:"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 caching Tempcode (needs special care)";s:11:"phpdoc_name";s:8:"tempcode";}i:13;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:56:"The theme this is being cached for (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}i:14;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:14:"?LANGUAGE_NAME";s:11:"description";s:62:"The language this is being cached for (null: current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:14:"put_into_cache";s:11:"description";s:28:"Put a result into the cache.";s:5:"flags";a:0:{}}s:13:"init__caches3";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__caches3";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:12:"auto_decache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:16:"changed_base_url";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the base URL has just been changed";s:11:"phpdoc_name";s:16:"changed_base_url";}}s:4:"name";s:12:"auto_decache";s:11:"description";s:27:"Automatically empty caches.";s:5:"flags";a:0:{}}s:15:"composr_cleanup";a:6:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:13:"cleanup_tools";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:36:"The cleanup tools to run (null: all)";s:11:"phpdoc_name";s:13:"cleanup_tools";}}s:4:"name";s:15:"composr_cleanup";s:11:"description";s:32:"Run the specified cleanup tools.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"Any messages returned";}}s:17:"erase_block_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:26:"erase_cache_signatures_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:26:"Erase cache signatures too";s:11:"phpdoc_name";s:26:"erase_cache_signatures_too";}i:1;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:52:"Only erase caching for this theme (null: all themes)";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:17:"erase_block_cache";s:11:"description";s:22:"Erase the block cache.";s:5:"flags";a:0:{}}s:19:"erase_comcode_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"erase_comcode_cache";s:11:"description";s:96:"Erase the Comcode cache. Warning: This can take a long time on large sites, so is best to avoid.";s:5:"flags";a:0:{}}s:17:"erase_thumb_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"erase_thumb_cache";s:11:"description";s:26:"Erase the thumbnail cache.";s:5:"flags";a:0:{}}s:21:"erase_cached_language";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"erase_cached_language";s:11:"description";s:25:"Erase the language cache.";s:5:"flags";a:0:{}}s:22:"erase_cached_templates";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:13:"preserve_some";s:7:"default";s:13:"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 preserve CSS and JS files that might be linked to between requests";s:11:"phpdoc_name";s:13:"preserve_some";}i:1;a:7:{s:4:"name";s:14:"only_templates";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:97:"Only erase specific templates with the following filename, excluding suffix(es) (null: erase all)";s:11:"phpdoc_name";s:14:"only_templates";}i:2;a:7:{s:4:"name";s:15:"raw_file_regexp";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:93:"The original template must contain a match for this regular expression (null: no restriction)";s:11:"phpdoc_name";s:15:"raw_file_regexp";}i:3;a:7:{s:4:"name";s:26:"rebuild_some_deleted_files";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:151:"Whether to rebuild some files that are deleted (be very careful about this, it is high-intensity, and may break due to in-memory caches still existing)";s:11:"phpdoc_name";s:26:"rebuild_some_deleted_files";}}s:4:"name";s:22:"erase_cached_templates";s:11:"description";s:49:"Erase all template caches (caches in all themes).";s:5:"flags";a:0:{}}s:24:"erase_comcode_page_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"erase_comcode_page_cache";s:11:"description";s:28:"Erase the Comcode page cache";s:5:"flags";a:0:{}}s:24:"erase_theme_images_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"erase_theme_images_cache";s:11:"description";s:28:"Erase the theme images cache";s:5:"flags";a:0:{}}s:14:"init__calendar";a:5:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__calendar";s:11:"description";s:35:"Standard code module init function.";s:5:"flags";a:0:{}}s:16:"render_event_box";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:4:{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:9:"Event row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_event_box";s:11:"description";s:20:"Render an event box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The event box";}}s:24:"render_calendar_type_box";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:4:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:24:"render_calendar_type_box";s:11:"description";s:64:"Get Tempcode for a calendar type 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:19:"get_week_number_for";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:2:{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:18:"The week timestamp";s:11:"phpdoc_name";s:9:"timestamp";}i:1;a:7:{s:4:"name";s:7:"no_year";s:7:"default";s:13:"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 do it contextually to the year, rather than including the year";s:11:"phpdoc_name";s:7:"no_year";}}s:4:"name";s:19:"get_week_number_for";s:11:"description";s:31:"Get the week number for a time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The week number";}}s:22:"date_from_week_of_year";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Year #";s:11:"phpdoc_name";s:4:"year";}i:1;a:5:{s:4:"name";s:4:"week";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Week #";s:11:"phpdoc_name";s:4:"week";}}s:4:"name";s:22:"date_from_week_of_year";s:11:"description";s:203:"Converts year+week to year+month+day. This is really complex. The first week of a year may actually start in December. The first day of the first week is a Monday or a Sunday, depending on configuration.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"Month #,Day #,Year #";}}s:23:"find_periods_recurrence";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The timezone for the event";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:16:"do_timezone_conv";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:65:"Whether the time should be converted to the viewer's own timezone";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:2;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:67:"The year the event starts at. This and the below are in server time";s:11:"phpdoc_name";s:10:"start_year";}i:3;a:5:{s:4:"name";s:11:"start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The month the event starts at";s:11:"phpdoc_name";s:11:"start_month";}i:4;a:5:{s:4:"name";s:9:"start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The day the event starts at";s:11:"phpdoc_name";s:9:"start_day";}i:5;a:6:{s:4:"name";s:23:"start_monthly_spec_type";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:5:{s:4:"name";s:10:"start_hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:51:"The hour the event starts at (null: full day event)";s:11:"phpdoc_name";s:10:"start_hour";}i:7;a:5:{s:4:"name";s:12:"start_minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The minute the event starts at (null: full day event)";s:11:"phpdoc_name";s:12:"start_minute";}i:8;a:5:{s:4:"name";s:8:"end_year";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:9;a:5:{s:4:"name";s:9:"end_month";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:10;a:5:{s:4:"name";s:7:"end_day";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:11;a:6:{s:4:"name";s:21:"end_monthly_spec_type";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:12;a:5:{s:4:"name";s:8:"end_hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:72:"The hour the event ends at (null: not a multi day event / all day event)";s:11:"phpdoc_name";s:8:"end_hour";}i:13;a:5:{s:4:"name";s:10:"end_minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:74:"The minute the event ends at (null: not a multi day event / all day event)";s:11:"phpdoc_name";s:10:"end_minute";}i:14;a:5:{s:4:"name";s:10:"recurrence";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The event recurrence";s:11:"phpdoc_name";s:10:"recurrence";}i:15;a:5:{s:4:"name";s:11:"recurrences";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:16;a:7:{s:4:"name";s:12:"period_start";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:68:"The timestamp that found times must exceed. In user-time (null: now)";s:11:"phpdoc_name";s:12:"period_start";}i:17;a:7:{s:4:"name";s:10:"period_end";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:82:"The timestamp that found times must not exceed. In user-time (null: 20 years time)";s:11:"phpdoc_name";s:10:"period_end";}}s:4:"name";s:23:"find_periods_recurrence";s:11:"description";s:103:"Find a list of pairs specifying the times the event occurs, for 20 years into the future, in user-time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:223:"A list of pairs for period times (timestamps, in user-time). Actually a series of pairs, 'window-bound timestamps' is first pair, then 'true coverage timestamps', then 'true coverage timestamps without timezone conversions'";}}s:26:"_compensate_for_dst_change";a:5:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:12:"Current hour";s:11:"phpdoc_name";s:4:"hour";}i:1;a:5:{s:4:"name";s:6:"minute";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:14:"Current minute";s:11:"phpdoc_name";s:6:"minute";}i:2;a:5:{s:4:"name";s:12:"day_of_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Current day";s:11:"phpdoc_name";s:12:"day_of_month";}i:3;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Current month";s:11:"phpdoc_name";s:5:"month";}i:4;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Current year";s:11:"phpdoc_name";s:4:"year";}i:5;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:6;a:5:{s:4:"name";s:16:"do_timezone_conv";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:84:"Whether the time should be converted to the viewer's own timezone. NOT ACTUALLY USED";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:7;a:5:{s:4:"name";s:7:"dif_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Jump in days that just happened";s:11:"phpdoc_name";s:7:"dif_day";}i:8;a:5:{s:4:"name";s:9:"dif_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"Jump in month that just happened";s:11:"phpdoc_name";s:9:"dif_month";}i:9;a:5:{s:4:"name";s:8:"dif_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Jump in year that just happened";s:11:"phpdoc_name";s:8:"dif_year";}}s:4:"name";s:26:"_compensate_for_dst_change";s:11:"description";s:144:"We have just jumped a UTC-based date (i.e. timezoneless) forward by calendar units, compensate for any DST ramifications in the target timezone.";s:5:"flags";a:0:{}}s:16:"get_days_between";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:19:"initial_start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Start month";s:11:"phpdoc_name";s:19:"initial_start_month";}i:1;a:5:{s:4:"name";s:17:"initial_start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Start day";s:11:"phpdoc_name";s:17:"initial_start_day";}i:2;a:5:{s:4:"name";s:18:"initial_start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"Start year";s:11:"phpdoc_name";s:18:"initial_start_year";}i:3;a:5:{s:4:"name";s:17:"initial_end_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"End month";s:11:"phpdoc_name";s:17:"initial_end_month";}i:4;a:5:{s:4:"name";s:15:"initial_end_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"End day";s:11:"phpdoc_name";s:15:"initial_end_day";}i:5;a:5:{s:4:"name";s:16:"initial_end_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"End year";s:11:"phpdoc_name";s:16:"initial_end_year";}}s:4:"name";s:16:"get_days_between";s:11:"description";s:63:"Get the number of days between two dates (so first+dif=second).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:18:"The number of days";}}s:33:"create_selection_list_event_types";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:48:"The event type to select by default (null: none)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:33:"create_selection_list_event_types";s:11:"description";s:83:"Get a list of event types, taking security into account against the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:30:"regenerate_event_reminder_jobs";a:5:{s:8:"filename";s:20:"sources/calendar.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:"The ID of the event";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Force evaluation even if it's in the past. Only valid for code events";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:30:"regenerate_event_reminder_jobs";s:11:"description";s:118:"Regenerate all the calendar jobs for reminders for next occurance of an event (because the event was added or edited).";s:5:"flags";a:0:{}}s:10:"date_range";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{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:22:"From time in user time";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:5:"?TIME";s:11:"description";s:46:"To time in user time (null: no actual to time)";s:11:"phpdoc_name";s:2:"to";}i:2;a:7:{s:4:"name";s:7:"do_time";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether time is included in this date range";s:11:"phpdoc_name";s:7:"do_time";}i:3;a:7:{s:4:"name";s:14:"force_absolute";s:7:"default";s:13:"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 force absolute display";s:11:"phpdoc_name";s:14:"force_absolute";}i:4;a:7:{s:4:"name";s:8:"timezone";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:"Display timezone";s:11:"phpdoc_name";s:8:"timezone";}}s:4:"name";s:10:"date_range";s:11:"description";s:90:"Create a neatly human-readable date range, using various user-friendly readability tricks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:33:"Textual specially-formatted range";}}s:16:"calendar_matches";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:14:"auth_member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:48:"The member we are running authentication against";s:11:"phpdoc_name";s:14:"auth_member_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:32:"The member to detect matches for";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:8:"restrict";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to restrict only to viewable events for the current member (rarely pass this as false!)";s:11:"phpdoc_name";s:8:"restrict";}i:3;a:5:{s:4:"name";s:12:"period_start";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:100:"The timestamp that found times must exceed. In user-time (null: use find_periods_recurrence default)";s:11:"phpdoc_name";s:12:"period_start";}i:4;a:5:{s:4:"name";s:10:"period_end";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:104:"The timestamp that found times must not exceed. In user-time (null: use find_periods_recurrence default)";s:11:"phpdoc_name";s:10:"period_end";}i:5;a:7:{s:4:"name";s:6:"filter";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 type filter, as used by the calendar module internally (null: none)";s:11:"phpdoc_name";s:6:"filter";}i:6;a:7:{s:4:"name";s:6:"do_rss";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include RSS/iCal events in the results";s:11:"phpdoc_name";s:6:"do_rss";}i:7;a:7:{s:4:"name";s:7:"private";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:87:"Whether to show private events (1) or public events (0) (null: both public and private)";s:11:"phpdoc_name";s:7:"private";}}s:4:"name";s:16:"calendar_matches";s:11:"description";s:55:"Detect calendar matches in a time period, in user-time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A list of events happening, with time details";}}s:28:"create_selection_list_events";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"only_owned";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:64:"Only show events owned by this member (null: no such limitation)";s:11:"phpdoc_name";s:10:"only_owned";}i:1;a:5:{s:4:"name";s:2:"it";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:54:"Event to select by default (null: no specific default)";s:11:"phpdoc_name";s:2:"it";}i:2;a:7:{s:4:"name";s:20:"edit_viewable_events";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether owned public events should be shown";s:11:"phpdoc_name";s:20:"edit_viewable_events";}}s:4:"name";s:28:"create_selection_list_events";s:11:"description";s:29:"Get a list of events to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:16:"detect_conflicts";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:19:{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:34:"The member to detect conflicts for";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:7:"skip_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:129:"The event ID that we are detecting conflicts with (we need this so we don't think we conflict with ourself) (null: not added yet)";s:11:"phpdoc_name";s:7:"skip_id";}i:2;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:83:"The year the event starts at. This and the below are in server time (null: default)";s:11:"phpdoc_name";s:10:"start_year";}i:3;a:5:{s:4:"name";s:11:"start_month";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:5:{s:4:"name";s:9:"start_day";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:6:{s:4:"name";s:23:"start_monthly_spec_type";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:5:{s:4:"name";s:10:"start_hour";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:5:{s:4:"name";s:12:"start_minute";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:5:{s:4:"name";s:8:"end_year";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:9;a:5:{s:4:"name";s:9:"end_month";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:10;a:5:{s:4:"name";s:7:"end_day";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:11;a:6:{s:4:"name";s:21:"end_monthly_spec_type";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:12;a:5:{s:4:"name";s:8:"end_hour";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:13;a:5:{s:4:"name";s:10:"end_minute";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:14;a:5:{s:4:"name";s:10:"recurrence";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The event recurrence";s:11:"phpdoc_name";s:10:"recurrence";}i:15;a:5:{s:4:"name";s:11:"recurrences";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:16;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:14:"The event type";s:11:"phpdoc_name";s:4:"type";}i:17;a:5:{s:4:"name";s:15:"member_calendar";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:32:"The member calendar (null: none)";s:11:"phpdoc_name";s:15:"member_calendar";}i:18;a:5:{s:4:"name";s:10:"scope_type";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:39:"The scope type, DETECT_CONFLICT_SCOPE_*";s:11:"phpdoc_name";s:10:"scope_type";}}s:4:"name";s:16:"detect_conflicts";s:11:"description";s:117:"Detect conflicts with an event at a certain time.NB: Only detects future conflicts, not conflicts on past scheduling.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:40:"Information about conflicts (null: none)";}}s:31:"find_timezone_start_hour_in_utc";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:31:"find_timezone_start_hour_in_utc";s:11:"description";s:38:"Find first hour in day for a timezone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:4:"Hour";}}s:33:"find_timezone_start_minute_in_utc";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:33:"find_timezone_start_minute_in_utc";s:11:"description";s:91:"Find first minute in day for a timezone. Usually 0, but some timezones have 30 min offsets.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:4:"Hour";}}s:29:"find_timezone_end_hour_in_utc";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:29:"find_timezone_end_hour_in_utc";s:11:"description";s:37:"Find last hour in day for a timezone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:4:"Hour";}}s:31:"find_timezone_end_minute_in_utc";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:31:"find_timezone_end_minute_in_utc";s:11:"description";s:91:"Find last minute in day for a timezone. Usually 59, but some timezones have 30 min offsets.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:4:"Hour";}}s:31:"cal_get_start_utctime_for_event";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:131:"The timezone it is in; used to derive $hour and $minute if those are null, such that they start the day correctly for this timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}i:5;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:151:"Hour (null: start hour of day in the timezone expressed as UTC, for whatever day the given midnight day/month/year shifts to after timezone conversion)";s:11:"phpdoc_name";s:4:"hour";}i:6;a:5:{s:4:"name";s:6:"minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:155:"Minute (null: start minute of day in the timezone expressed as UTC, for whatever day the given midnight day/month/year shifts to after timezone conversion)";s:11:"phpdoc_name";s:6:"minute";}i:7;a:5:{s:4:"name";s:22:"show_in_users_timezone";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:189:"Whether the time will be converted to the $timezone instead of UTC *later*. If not then the "UTC time" returned is actually guaged for $timezone, as that's how it was opted to be displayed.";s:11:"phpdoc_name";s:22:"show_in_users_timezone";}}s:4:"name";s:31:"cal_get_start_utctime_for_event";s:11:"description";s:54:"Get the UTC start time for a specified UTC time event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:9:"Timestamp";}}s:29:"cal_get_end_utctime_for_event";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}i:5;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:149:"Hour (null: end hour of day in the timezone expressed as UTC, for whatever day the given midnight day/month/year shifts to after timezone conversion)";s:11:"phpdoc_name";s:4:"hour";}i:6;a:5:{s:4:"name";s:6:"minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:153:"Minute (null: end minute of day in the timezone expressed as UTC, for whatever day the given midnight day/month/year shifts to after timezone conversion)";s:11:"phpdoc_name";s:6:"minute";}i:7;a:5:{s:4:"name";s:22:"show_in_users_timezone";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:74:"Whether the time should be converted to the viewer's own timezone instead.";s:11:"phpdoc_name";s:22:"show_in_users_timezone";}}s:4:"name";s:29:"cal_get_end_utctime_for_event";s:11:"description";s:52:"Get the UTC end time for a specified UTC time event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:9:"Timestamp";}}s:23:"cal_utctime_to_usertime";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"utc_timestamp";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"Timestamp (proper UTC timestamp, not in user time)";s:11:"phpdoc_name";s:13:"utc_timestamp";}i:1;a:5:{s:4:"name";s:16:"default_timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:161:"The timezone associated with the event (the passed $utc_timestamp should NOT be relative to this timezone, that must be UTC) THIS PARAMETER IS NOT ACTUALLY USED.";s:11:"phpdoc_name";s:16:"default_timezone";}i:2;a:5:{s:4:"name";s:22:"show_in_users_timezone";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether the time should be converted to the viewer's own timezone instead";s:11:"phpdoc_name";s:22:"show_in_users_timezone";}}s:4:"name";s:23:"cal_utctime_to_usertime";s:11:"description";s:79:"Put a timestamp into the correct timezone for being reported onto the calendar.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:17:"Altered timestamp";}}s:19:"detect_happening_at";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:6:{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:34:"The member to detect conflicts for";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:7:"skip_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:129:"The event ID that we are detecting conflicts with (we need this so we don't think we conflict with ourself) (null: not added yet)";s:11:"phpdoc_name";s:7:"skip_id";}i:2;a:5:{s:4:"name";s:9:"our_times";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:59:"List of pairs specifying our happening time (in time order)";s:11:"phpdoc_name";s:9:"our_times";}i:3;a:7:{s:4:"name";s:8:"restrict";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether to restrict only to viewable events for the current member";s:11:"phpdoc_name";s:8:"restrict";}i:4;a:7:{s:4:"name";s:12:"period_start";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:100:"The timestamp that found times must exceed. In user-time (null: use find_periods_recurrence default)";s:11:"phpdoc_name";s:12:"period_start";}i:5;a:7:{s:4:"name";s:10:"period_end";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:104:"The timestamp that found times must not exceed. In user-time (null: use find_periods_recurrence default)";s:11:"phpdoc_name";s:10:"period_end";}}s:4:"name";s:19:"detect_happening_at";s:11:"description";s:55:"Detect conflicts with an event in certain time periods.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A list of events happening, with time details";}}s:26:"find_concrete_day_of_month";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"The concrete year";s:11:"phpdoc_name";s:4:"year";}i:1;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The concrete month";s:11:"phpdoc_name";s:5:"month";}i:2;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The encoded day of month";s:11:"phpdoc_name";s:3:"day";}i:3;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}i:4;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"The concrete hour";s:11:"phpdoc_name";s:4:"hour";}i:5;a:5:{s:4:"name";s:6:"minute";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The concrete minute";s:11:"phpdoc_name";s:6:"minute";}i:6;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The timezone";s:11:"phpdoc_name";s:8:"timezone";}i:7;a:5:{s:4:"name";s:22:"show_in_users_timezone";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:226:"Whether to do a timezone conversion (NB: unused, as this is before conversion to what dates users see - we are only using timezones here to push the nth weekday appropriately to the correct timezone, due to alignment problems)";s:11:"phpdoc_name";s:22:"show_in_users_timezone";}}s:4:"name";s:26:"find_concrete_day_of_month";s:11:"description";s:75:"Given a specially encoded day of month, work out the real day of the month.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:12:"Concrete day";}}s:17:"find_abstract_day";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"The concrete year";s:11:"phpdoc_name";s:4:"year";}i:1;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The concrete month";s:11:"phpdoc_name";s:5:"month";}i:2;a:5:{s:4:"name";s:12:"day_of_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"The concrete day of month";s:11:"phpdoc_name";s:12:"day_of_month";}i:3;a:5:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";}}s:4:"name";s:17:"find_abstract_day";s:11:"description";s:91:"Given a calendar day of month, work out the day of the month within the specified encoding.";s:5:"flags";a:0:{}s:6:"return";a:3:{s:4:"type";s:7:"integer";s:11:"description";s:12:"Concrete day";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:25:"monthly_spec_type_chooser";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:12:"day_of_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:16:"The concrete day";s:11:"phpdoc_name";s:12:"day_of_month";}i:1;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The concrete month";s:11:"phpdoc_name";s:5:"month";}i:2;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"The concrete year";s:11:"phpdoc_name";s:4:"year";}i:3;a:8:{s:4:"name";s:25:"default_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:35:"Current in-month specification type";s:11:"phpdoc_name";s:25:"default_monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:25:"monthly_spec_type_chooser";s:11:"description";s:90:"Choose how a recurring monthly event should be encoded.This function is timezone-agnostic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Chooser";}}s:35:"adjust_event_dates_for_a_recurrence";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"A day (Y-m-d)";s:11:"phpdoc_name";s:3:"day";}i:1;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The event row";s:11:"phpdoc_name";s:5:"event";}i:2;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"Timezone of the viewer";s:11:"phpdoc_name";s:8:"timezone";}}s:4:"name";s:35:"adjust_event_dates_for_a_recurrence";s:11:"description";s:60:"Adjust an event row to match a recurrence on a specific day.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"Adjusted event row";}}s:38:"dst_boundary_difference_for_recurrence";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"a_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"'A' year";s:11:"phpdoc_name";s:6:"a_year";}i:1;a:5:{s:4:"name";s:7:"a_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"'A' month";s:11:"phpdoc_name";s:7:"a_month";}i:2;a:5:{s:4:"name";s:5:"a_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"'A' day";s:11:"phpdoc_name";s:5:"a_day";}i:3;a:5:{s:4:"name";s:6:"b_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"'B' year";s:11:"phpdoc_name";s:6:"b_year";}i:4;a:5:{s:4:"name";s:7:"b_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"'B' month";s:11:"phpdoc_name";s:7:"b_month";}i:5;a:5:{s:4:"name";s:5:"b_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"'B' day";s:11:"phpdoc_name";s:5:"b_day";}i:6;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The timezone";s:11:"phpdoc_name";s:8:"timezone";}}s:4:"name";s:38:"dst_boundary_difference_for_recurrence";s:11:"description";s:74:"An event moved from 'a' to 'b' may have an hour/minute shift due to a DST.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"A pair: shift in hours, shift in minutes";}}s:30:"resolve_complex_event_end_date";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:30:"resolve_complex_event_end_date";s:11:"description";s:378:"An event may have a complex end date (e.g. 4th Friday).We want to fix it to a calendar day for the recurrence (which we assume is already fixed into the event row).We also want to define it (trick it) to be stated in the same month of the start date, even if that means the days will exceed the number of days in a month.This will allow us to do shifts around in calendar-space.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";}}s:26:"find_event_start_timestamp";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:26:"find_event_start_timestamp";s:11:"description";s:39:"Find the timestamp of an event's start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:67:"A pair: timestamp, timestamp considering the viewing users timezone";}}s:24:"find_event_end_timestamp";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:24:"find_event_end_timestamp";s:11:"description";s:37:"Find the timestamp of an event's end.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:67:"A pair: timestamp, timestamp considering the viewing users timezone";}}s:37:"start_find_concrete_day_of_month_wrap";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:37:"start_find_concrete_day_of_month_wrap";s:11:"description";s:56:"Find the concrete start day of a month for an event row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:12:"Concrete day";}}s:35:"end_find_concrete_day_of_month_wrap";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:35:"end_find_concrete_day_of_month_wrap";s:11:"description";s:54:"Find the concrete end day of a month for an event row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:12:"Concrete day";}}s:29:"get_calendar_event_first_date";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:8:"timezone";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:1;a:5:{s:4:"name";s:16:"do_timezone_conv";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:65:"Whether the time should be converted to the viewer's own timezone";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:2;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:67:"The year the event starts at. This and the below are in server time";s:11:"phpdoc_name";s:10:"start_year";}i:3;a:5:{s:4:"name";s:11:"start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The month the event starts at";s:11:"phpdoc_name";s:11:"start_month";}i:4;a:5:{s:4:"name";s:9:"start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The day the event starts at";s:11:"phpdoc_name";s:9:"start_day";}i:5;a:6:{s:4:"name";s:23:"start_monthly_spec_type";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:5:{s:4:"name";s:10:"start_hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The hour the event starts at";s:11:"phpdoc_name";s:10:"start_hour";}i:7;a:5:{s:4:"name";s:12:"start_minute";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The minute the event starts at";s:11:"phpdoc_name";s:12:"start_minute";}i:8;a:5:{s:4:"name";s:8:"end_year";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:9;a:5:{s:4:"name";s:9:"end_month";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:10;a:5:{s:4:"name";s:7:"end_day";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:11;a:6:{s:4:"name";s:21:"end_monthly_spec_type";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:12;a:5:{s:4:"name";s:8:"end_hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:72:"The hour the event ends at (null: not a multi day event / all day event)";s:11:"phpdoc_name";s:8:"end_hour";}i:13;a:5:{s:4:"name";s:10:"end_minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:74:"The minute the event ends at (null: not a multi day event / all day event)";s:11:"phpdoc_name";s:10:"end_minute";}i:14;a:5:{s:4:"name";s:10:"recurrence";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The event recurrence";s:11:"phpdoc_name";s:10:"recurrence";}i:15;a:5:{s:4:"name";s:11:"recurrences";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:16;a:7:{s:4:"name";s:11:"force_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:62:"Whether to forcibly get the first recurrence, not a future one";s:11:"phpdoc_name";s:11:"force_first";}}s:4:"name";s:29:"get_calendar_event_first_date";s:11:"description";s:107:"Find details of when an event happens. Preferably the next recurrence, but if it is in the past, the first.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:59:"A tuple: Written date [range], from timestamp, to timestamp";}}s:18:"add_calendar_event";a:6:{s:8:"filename";s:21:"sources/calendar2.php";s:10:"parameters";a:35:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:14:"The event type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:10:"recurrence";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:112:"The recurrence code (set to 'none' for no recurrences: blank means infinite and will basically time-out Composr)";s:11:"phpdoc_name";s:10:"recurrence";}i:2;a:5:{s:4:"name";s:11:"recurrences";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:3;a:5:{s:4:"name";s:15:"seg_recurrences";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:4;a:5:{s:4:"name";s:5:"title";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:5;a:5:{s:4:"name";s:7:"content";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:6;a:6:{s:4:"name";s:8:"priority";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:7;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The year the event starts at";s:11:"phpdoc_name";s:10:"start_year";}i:8;a:5:{s:4:"name";s:11:"start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The month the event starts at";s:11:"phpdoc_name";s:11:"start_month";}i:9;a:5:{s:4:"name";s:9:"start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The day the event starts at";s:11:"phpdoc_name";s:9:"start_day";}i:10;a:6:{s:4:"name";s:23:"start_monthly_spec_type";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:11;a:5:{s:4:"name";s:10:"start_hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The hour the event starts at";s:11:"phpdoc_name";s:10:"start_hour";}i:12;a:5:{s:4:"name";s:12:"start_minute";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The minute the event starts at";s:11:"phpdoc_name";s:12:"start_minute";}i:13;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:14;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:15;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:16;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:17;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:18;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:19;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:20;a:7:{s:4:"name";s:16:"do_timezone_conv";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 time should be presented in the viewer's own timezone";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:21;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:22;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:36:"Whether the event has been validated";s:11:"phpdoc_name";s:9:"validated";}i:23;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:6:"BINARY";s:11:"description";s:30:"Whether the event may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:24;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:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:25;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:6:"BINARY";s:11:"description";s:36:"Whether the event may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:26;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:"Hidden notes pertaining to the event";s:11:"phpdoc_name";s:5:"notes";}i:27;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:42:"The event submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:28;a:7:{s:4:"name";s:5:"views";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:26:"The number of views so far";s:11:"phpdoc_name";s:5:"views";}i:29;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:30;a:7:{s:4:"name";s:9:"edit_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:27:"The edit time (null: never)";s:11:"phpdoc_name";s:9:"edit_time";}i:31;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:32;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:33;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:34;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:18:"add_calendar_event";s:11:"description";s:21:"Add a calendar event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"The ID of the event";}}s:19:"edit_calendar_event";a:5:{s:8:"filename";s:21:"sources/calendar2.php";s:10:"parameters";a:36:{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:"The ID of the event";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"type";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:5:{s:4:"name";s:10:"recurrence";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:3;a:5:{s:4:"name";s:11:"recurrences";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:4;a:5:{s:4:"name";s:15:"seg_recurrences";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:5;a:5:{s:4:"name";s:5:"title";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:6;a:5:{s:4:"name";s:7:"content";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:7;a:6:{s:4:"name";s:8:"priority";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:8;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The year the event starts at";s:11:"phpdoc_name";s:10:"start_year";}i:9;a:5:{s:4:"name";s:11:"start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The month the event starts at";s:11:"phpdoc_name";s:11:"start_month";}i:10;a:5:{s:4:"name";s:9:"start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The day the event starts at";s:11:"phpdoc_name";s:9:"start_day";}i:11;a:6:{s:4:"name";s:23:"start_monthly_spec_type";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:12;a:5:{s:4:"name";s:10:"start_hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The hour the event starts at";s:11:"phpdoc_name";s:10:"start_hour";}i:13;a:5:{s:4:"name";s:12:"start_minute";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The minute the event starts at";s:11:"phpdoc_name";s:12:"start_minute";}i:14;a:5:{s:4:"name";s:8:"end_year";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:5:{s:4:"name";s:9:"end_month";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:5:{s:4:"name";s:7:"end_day";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:6:{s:4:"name";s:21:"end_monthly_spec_type";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:5:{s:4:"name";s:8:"end_hour";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:5:{s:4:"name";s:10:"end_minute";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:5:{s:4:"name";s:8:"timezone";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:5:{s:4:"name";s:16:"do_timezone_conv";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:5:{s:4:"name";s:15:"member_calendar";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:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:24;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:25;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:57:"Whether the event has been validated (null: don't change)";s:11:"phpdoc_name";s:9:"validated";}i:26;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the event may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:27;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:28;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the event may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:29;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"Hidden notes pertaining to the event";s:11:"phpdoc_name";s:5:"notes";}i:30;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:31;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:32;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:33;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:34;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:35;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:19:"edit_calendar_event";s:11:"description";s:22:"Edit a calendar event.";s:5:"flags";a:0:{}}s:21:"delete_calendar_event";a:5:{s:8:"filename";s:21:"sources/calendar2.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:19:"The ID of the event";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:21:"delete_calendar_event";s:11:"description";s:24:"Delete a calendar event.";s:5:"flags";a:0:{}}s:14:"add_event_type";a:6:{s:8:"filename";s:21:"sources/calendar2.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:10:"SHORT_TEXT";s:11:"description";s:27:"The title of the event type";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"logo";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The theme image code";s:11:"phpdoc_name";s:4:"logo";}i:2;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:14:"add_event_type";s:11:"description";s:26:"Add a calendar event type.";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 the event type";}}s:15:"edit_event_type";a:5:{s:8:"filename";s:21:"sources/calendar2.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:9:"AUTO_LINK";s:11:"description";s:24:"The ID of the event type";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:27:"The title of the event type";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"logo";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The theme image code";s:11:"phpdoc_name";s:4:"logo";}i:3;a:5:{s:4:"name";s:13:"external_feed";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:"edit_event_type";s:11:"description";s:27:"Edit a calendar event type.";s:5:"flags";a:0:{}}s:17:"delete_event_type";a:5:{s:8:"filename";s:21:"sources/calendar2.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:24:"The ID of the event type";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"delete_event_type";s:11:"description";s:29:"Delete a calendar event type.";s:5:"flags";a:0:{}}s:11:"ical_escape";a:6:{s:8:"filename";s:25:"sources/calendar_ical.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:5:"Input";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:11:"ical_escape";s:11:"description";s:40:"Escapes a string as per the ical format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Output";}}s:11:"output_ical";a:5:{s:8:"filename";s:25:"sources/calendar_ical.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"output_ical";s:11:"description";s:53:"Outputs the logged-in member's calendar view to ical.";s:5:"flags";a:0:{}}s:11:"ical_import";a:5:{s:8:"filename";s:25:"sources/calendar_ical.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:9:"File path";s:11:"phpdoc_name";s:9:"file_name";}}s:4:"name";s:11:"ical_import";s:11:"description";s:47:"Import ical events to members's event calendar.";s:5:"flags";a:0:{}}s:19:"get_event_data_ical";a:6:{s:8:"filename";s:25:"sources/calendar_ical.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"calendar_nodes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"Array of given event details";s:11:"phpdoc_name";s:14:"calendar_nodes";}}s:4:"name";s:19:"get_event_data_ical";s:11:"description";s:57:"Get array of an events from node of an imported ical file";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"Returns array of event details for mapping";}}s:13:"init__captcha";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__captcha";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:14:"captcha_script";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"captcha_script";s:11:"description";s:45:"Outputs and stores information for a CAPTCHA.";s:5:"flags";a:0:{}}s:18:"form_input_captcha";a:6:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"form_input_captcha";s:11:"description";s:45:"Get a captcha (aka security code) form field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The field";}}s:11:"use_captcha";a:6:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"use_captcha";s:11:"description";s:113:"Find whether captcha (the security image) should be used if preferred (making this call assumes it is preferred).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether captcha is used";}}s:16:"generate_captcha";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"generate_captcha";s:11:"description";s:25:"Generate a CAPTCHA image.";s:5:"flags";a:0:{}}s:15:"enforce_captcha";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:19:"regenerate_on_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to possibly regenerate upon error.";s:11:"phpdoc_name";s:19:"regenerate_on_error";}}s:4:"name";s:15:"enforce_captcha";s:11:"description";s:75:"Calling this assumes captcha was needed. Checks that it was done correctly.";s:5:"flags";a:0:{}}s:13:"check_captcha";a:6:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"code_entered";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"CAPTCHA entered.";s:11:"phpdoc_name";s:12:"code_entered";}i:1;a:7:{s:4:"name";s:19:"regenerate_on_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to possibly regenerate upon error.";s:11:"phpdoc_name";s:19:"regenerate_on_error";}}s:4:"name";s:13:"check_captcha";s:11:"description";s:17:"Checks a CAPTCHA.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether it is valid for the current session.";}}s:17:"_cleanout_captcha";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_cleanout_captcha";s:11:"description";s:23:"Delete current CAPTCHA.";s:5:"flags";a:0:{}}s:18:"captcha_ajax_check";a:6:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"captcha_ajax_check";s:11:"description";s:44:"Get code to do an AJAX check of the CAPTCHA.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"JavaScript code.";}}s:16:"init__catalogues";a:5:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__catalogues";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"load_catalogue_row";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:2:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}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:72:"Whether to return null if we can't find it (as opposed to a fatal error)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:18:"load_catalogue_row";s:11:"description";s:20:"Get a catalogue row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:69:"Catalogue row (null: could not find it, and $fail_ok was set to true)";}}s:26:"render_catalogue_entry_box";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:6:{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:13:"Catalogue row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:26:"render_catalogue_entry_box";s:11:"description";s:23:"Render a catalogue box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The catalogue box";}}s:29:"render_catalogue_category_box";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:7:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:29:"render_catalogue_category_box";s:11:"description";s:69:"Get Tempcode for a catalogue category 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:20:"render_catalogue_box";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{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:13:"Catalogue row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:20:"render_catalogue_box";s:11:"description";s:23:"Render a catalogue box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The catalogue box";}}s:33:"count_catalogue_category_children";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:60:"The ID of the category for which count details are collected";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:33:"count_catalogue_category_children";s:11:"description";s:83:"Count the entries and subcategories underneath the specified category, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:313:"The number of entries is returned in $output['num_entries'], and the number of subcategories is returned in $output['num_children'], the (possibly recursive) number of subcategories in $output['num_children_children'], and the (possibly recursive) number of entries is returned in $output['num_entries_children'].";}}s:39:"render_catalogue_category_entry_buildup";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:86:"The ID of the category for which the entries are being collected (null: no limitation)";s:11:"phpdoc_name";s:11:"category_id";}i:1;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";}i:2;a:5:{s:4:"name";s:9:"catalogue";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:70:"A database row of the catalogue we are working with (null: read it in)";s:11:"phpdoc_name";s:9:"catalogue";}i:3;a:6:{s:4:"name";s:9:"view_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The view type we're doing";s:11:"phpdoc_name";s:9:"view_type";s:3:"set";s:20:"PAGE SEARCH CATEGORY";}i:4;a:5:{s:4:"name";s:7:"tpl_set";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The template set we are rendering this category using";s:11:"phpdoc_name";s:7:"tpl_set";}i:5;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:88:"The maximum number of entries to show on a single page of this this category (null: all)";s:11:"phpdoc_name";s:3:"max";}i:6;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:40:"The entry number to start at (null: all)";s:11:"phpdoc_name";s:5:"start";}i:7;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:143:"The entries to show, may be from other categories. Can either be SQL fragment (produced from Selectcode?), or array (null: use $start and $max)";s:11:"phpdoc_name";s:6:"select";}i:8;a:5:{s:4:"name";s:4:"root";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:61:"The virtual root for display of this category (null: default)";s:11:"phpdoc_name";s:4:"root";}i:9;a:7:{s:4:"name";s:12:"display_type";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:54:"The display type to use (null: lookup from $catalogue)";s:11:"phpdoc_name";s:12:"display_type";}i:10;a:7:{s:4:"name";s:10:"do_sorting";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to perform sorting";s:11:"phpdoc_name";s:10:"do_sorting";}i:11;a:7:{s:4:"name";s:7:"entries";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:49:"A list of entry rows (null: select them normally)";s:11:"phpdoc_name";s:7:"entries";}i:12;a:7:{s:4:"name";s:6:"filter";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:34:"Filtercode to apply (blank: none).";s:11:"phpdoc_name";s:6:"filter";}i:13;a:7:{s:4:"name";s:19:"order_by_high_level";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:"Orderer (null: read from environment)";s:11:"phpdoc_name";s:19:"order_by_high_level";}i:14;a:7:{s:4:"name";s:14:"ordering_param";s:7:"default";s:4:"sort";s:11:"default_raw";s:6:"'sort'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:90:"Environment param used for ordering. You should pass in $order_by_high_level if it is set.";s:11:"phpdoc_name";s:14:"ordering_param";}i:15;a:7:{s:4:"name";s:17:"viewing_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:38:"Viewing member ID (null: current user)";s:11:"phpdoc_name";s:17:"viewing_member_id";}}s:4:"name";s:39:"render_catalogue_category_entry_buildup";s:11:"description";s:67:"Get an ordered array of all the entries in the specified catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:182:"An array containing our built up entries (renderable Tempcode), our sorting interface, and our entries (entry records from database, with an additional 'map' field), and the max rows";}}s:22:"_catalogues_filtercode";a:6:{s:8:"filename";s:22:"sources/catalogues.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"Name of the catalogue (null: unknown; reduces performance)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:10:"filter_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:10:"filter_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:22:"_catalogues_filtercode";s:11:"description";s:74:"Make sure we are doing necessary join to be able to access the given field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:21:"get_catalogue_entries";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:11:{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:21:"Name of the catalogue";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:86:"The ID of the category for which the entries are being collected (null: no limitation)";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:121:"The maximum number of entries to show on a single page of this this category (ignored if $select is not null) (null: all)";s:11:"phpdoc_name";s:3:"max";}i:3;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:73:"The entry number to start at (ignored if $select is not null) (null: all)";s:11:"phpdoc_name";s:5:"start";}i:4;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:143:"The entries to show, may be from other categories. Can either be SQL fragment (produced from Selectcode?), or array (null: use $start and $max)";s:11:"phpdoc_name";s:6:"select";}i:5;a:5:{s:4:"name";s:10:"do_sorting";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to perform sorting";s:11:"phpdoc_name";s:10:"do_sorting";}i:6;a:5:{s:4:"name";s:10:"filtercode";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:197:"List of filters to apply (null: none). Each filter is a triple: ORd comparison key(s) [separated by pipe symbols], comparison type (one of '<', '>', '<=', '>=', '=', '~=', or '~'), comparison value";s:11:"phpdoc_name";s:10:"filtercode";}i:7;a:5:{s:4:"name";s:8:"order_by";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:7:"Orderer";s:11:"phpdoc_name";s:8:"order_by";}i:8;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:9;a:7:{s:4:"name";s:11:"extra_where";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 WHERE SQL to add on to query";s:11:"phpdoc_name";s:11:"extra_where";}i:10;a:7:{s:4:"name";s:17:"viewing_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:38:"Viewing member ID (null: current user)";s:11:"phpdoc_name";s:17:"viewing_member_id";}}s:4:"name";s:21:"get_catalogue_entries";s:11:"description";s:54:"Fetch entries from database, with sorting if possible.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:78:"A tuple: whether sorting was done, number of entries returned, list of entries";}}s:29:"catalogue_entries_manual_sort";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:26:"Fields array for catalogue";s:11:"phpdoc_name";s:6:"fields";}i:1;a:5:{s:4:"name";s:7:"entries";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:30:"Entries to sort (by reference)";s:11:"phpdoc_name";s:7:"entries";}i:2;a:5:{s:4:"name";s:8:"order_by";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"What to sort by";s:11:"phpdoc_name";s:8:"order_by";}i:3;a:5:{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:4:"name";s:29:"catalogue_entries_manual_sort";s:11:"description";s:37:"Manually sort some catalogue entries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"Entries";}}s:23:"get_catalogue_entry_map";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:5:"entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:47:"A database row of the entry we are working with";s:11:"phpdoc_name";s:5:"entry";}i:1;a:5:{s:4:"name";s:9:"catalogue";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:75:"A database row of the catalogue we are working with (null: read it in here)";s:11:"phpdoc_name";s:9:"catalogue";}i:2;a:6:{s:4:"name";s:9:"view_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The view type we're doing";s:11:"phpdoc_name";s:9:"view_type";s:3:"set";s:20:"PAGE SEARCH CATEGORY";}i:3;a:5:{s:4:"name";s:7:"tpl_set";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The template set we are rendering this category using";s:11:"phpdoc_name";s:7:"tpl_set";}i:4;a:7:{s:4:"name";s:4:"root";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:58:"The virtual root for display of this category (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:6:"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:69:"The database rows for the fields for this catalogue (null: find them)";s:11:"phpdoc_name";s:6:"fields";}i:6;a:7:{s:4:"name";s:11:"only_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:92:"A list of fields (sequence numbers) that we are limiting ourselves to (null: get ALL fields)";s:11:"phpdoc_name";s:11:"only_fields";}i:7;a:7:{s:4:"name";s:16:"feedback_details";s:7:"default";s:13:"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 grab the feedback details";s:11:"phpdoc_name";s:16:"feedback_details";}i:8;a:7:{s:4:"name";s:19:"breadcrumbs_details";s:7:"default";s:13:"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 grab the breadcrumbs details";s:11:"phpdoc_name";s:19:"breadcrumbs_details";}i:9;a:7:{s:4:"name";s:8:"order_by";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:36:"Field index to order by (null: none)";s:11:"phpdoc_name";s:8:"order_by";}i:10;a:7:{s:4:"name";s:12:"_breadcrumbs";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:6:"?array";s:11:"description";s:48:"Write breadcrumbs into here (null: don't bother)";s:11:"phpdoc_name";s:12:"_breadcrumbs";}i:11;a:7:{s:4:"name";s:14:"force_view_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:28:"Whether to render everything";s:11:"phpdoc_name";s:14:"force_view_all";}}s:4:"name";s:23:"get_catalogue_entry_map";s:11:"description";s:44:"Get a map of the fields for the given entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:230:"A map of information relating to the entry. The map contains 'FIELDS' (Tempcode for all accumulated fields), 'FIELD_x' (for each field x applying to the entry), STAFF_DETAILS, COMMENT_DETAILS, RATING_DETAILS, VIEW_URL, BREADCRUMBS";}}s:32:"get_catalogue_entry_field_values";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:60:"The catalogue name we are getting an entry in (null: lookup)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"The ID of the entry we are getting OR the row";s:11:"phpdoc_name";s:8:"entry_id";}i:2;a:7:{s:4:"name";s:11:"only_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:73:"A list of fields that we are limiting ourselves to (null: get ALL fields)";s:11:"phpdoc_name";s:11:"only_fields";}i:3;a:7:{s:4:"name";s:6:"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:69:"The database rows for the fields for this catalogue (null: find them)";s:11:"phpdoc_name";s:6:"fields";}i:4;a:7:{s:4:"name";s:13:"natural_order";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:177:"Whether to order the fields in their natural database order. This is only used for shopping catalogues as a defence against webmaster field reordering and not a strong guarantee";s:11:"phpdoc_name";s:13:"natural_order";}i:5;a:8:{s:4:"name";s:9:"view_type";s:7:"default";s:4:"PAGE";s:11:"default_raw";s:6:"'PAGE'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The view type we're doing";s:11:"phpdoc_name";s:9:"view_type";s:3:"set";s:20:"PAGE SEARCH CATEGORY";}}s:4:"name";s:32:"get_catalogue_entry_field_values";s:11:"description";s:72:"Get the values for the specified fields, for the stated catalogue entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:206:"A list of maps (each field for the entry gets a map), where each map contains 'effective_value' (the value for the field). Some maps get additional fields (effective_value_pure), depending on the field type";}}s:30:"_resolve_catalogue_entry_field";a:5:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The field row";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"The ID of the entry we are getting OR the row";s:11:"phpdoc_name";s:8:"entry_id";}i:2;a:5:{s:4:"name";s:14:"only_field_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:76:"A list of field IDs that we are limiting ourselves to (null: get ALL fields)";s:11:"phpdoc_name";s:14:"only_field_ids";}i:3;a:5:{s:4:"name";s:6:"target";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:25:"Save the result into here";s:11:"phpdoc_name";s:6:"target";}}s:4:"name";s:30:"_resolve_catalogue_entry_field";s:11:"description";s:57:"Get the standardised details for a catalogue entry field.";s:5:"flags";a:0:{}}s:26:"_get_catalogue_entry_field";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"field_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the field we are getting";s:11:"phpdoc_name";s:8:"field_id";}i:1;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:49:"The ID of the entry we are getting for OR the row";s:11:"phpdoc_name";s:8:"entry_id";}i:2;a:8:{s:4:"name";s:4:"type";s:7:"default";s:5:"short";s:11:"default_raw";s:7:"'short'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The type of field";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:10:"short long";}i:3;a:7:{s:4:"name";s:14:"only_field_ids";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:76:"A list of field IDs that we are limiting ourselves to (null: get ALL fields)";s:11:"phpdoc_name";s:14:"only_field_ids";}}s:4:"name";s:26:"_get_catalogue_entry_field";s:11:"description";s:70:"Get the value for the specified field, for the stated catalogue entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:25:"The row (null: not found)";}}s:32:"create_selection_list_catalogues";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{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:66:"The name of the currently selected catalogue (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:24:"prefer_ones_with_entries";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"If there are too many to list prefer to get ones with entries rather than just the newest";s:11:"phpdoc_name";s:24:"prefer_ones_with_entries";}i:2;a:7:{s:4:"name";s:16:"only_submittable";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether to only show catalogues that can be submitted to";s:11:"phpdoc_name";s:16:"only_submittable";}i:3;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:32:"create_selection_list_catalogues";s:11:"description";s:56:"Get a nice, formatted, XHTML list of all the catalogues.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"Catalogue selection list";}}s:45:"create_selection_list_catalogue_category_tree";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:41:"The currently selected entry (null: none)";s:11:"phpdoc_name";s:2:"it";}i:2;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:3;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to make the list elements store comma-separated child lists instead of IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}}s:4:"name";s:45:"create_selection_list_catalogue_category_tree";s:11:"description";s:128:"Get a nice, formatted XHTML list extending from the root, and showing all subcategories, and their subcategories (ad infinitum).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The list of categories";}}s:27:"get_catalogue_category_tree";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:8:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:74:"The category being at the root of our recursion (null: true root category)";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:7:{s:4:"name";s:11:"breadcrumbs";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:49:"The breadcrumbs up to this point in the recursion";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:3;a:7:{s:4:"name";s:16:"category_details";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:198:"The category details of the $category_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs details";s:11:"phpdoc_name";s:16:"category_details";}i:4;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:5;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:6;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to make the list elements store comma-separated child lists instead of IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:7;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 collect entry counts with our tree information";s:11:"phpdoc_name";s:8:"do_stats";}}s:4:"name";s:27:"get_catalogue_category_tree";s:11:"description";s:137:"Get a list of maps containing all the subcategories, and path information, of the specified category - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:232:"A list of maps for all subcategories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (path to the category, including the categories own title), and 'entries_count' (the number of entries in the category).";}}s:44:"create_selection_list_catalogue_entries_tree";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:50:"The currently selected entry (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:2;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:10:"?AUTO_LINK";s:11:"description";s:60:"Only show entries submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}i:3;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:44:"create_selection_list_catalogue_entries_tree";s:11:"description";s:81:"Get a nice, formatted XHTML list of entries, in catalogue category tree structure";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The list of entries";}}s:26:"get_catalogue_entries_tree";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:7:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:60:"Only show entries submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}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:65:"The category being at the root of our recursion (null: true root)";s:11:"phpdoc_name";s:11:"category_id";}i:3;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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:4;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:8:"?ID_TEXT";s:11:"description";s:184:"The name of the $category_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:5:"title";}i:5;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:6;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:26:"get_catalogue_entries_tree";s:11:"description";s:144:"Get a list of maps containing all the catalogue entries, and path information, under the specified category - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:178:"A list of maps for all categories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (path to the category, including the categories own title), and more.";}}s:30:"catalogue_category_breadcrumbs";a:6:{s:8:"filename";s:22:"sources/catalogues.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:9:"AUTO_LINK";s:11:"description";s:31:"The category we are finding for";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:7:{s:4:"name";s:4:"root";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:42:"The root of the tree (null: the true root)";s:11:"phpdoc_name";s:4:"root";}i:2;a:7:{s:4:"name";s:18:"no_link_for_me_sir";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether to include category links at this level (the recursed levels will always contain links - the top level is optional, hence this parameter)";s:11:"phpdoc_name";s:18:"no_link_for_me_sir";}i:3;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}}s:4:"name";s:30:"catalogue_category_breadcrumbs";s:11:"description";s:98:"Get a formatted XHTML string of the route back to the specified root, from the specified category.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The breadcrumbs";}}s:22:"is_ecommerce_catalogue";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:7:{s:4:"name";s:9:"catalogue";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:29:"Catalogue row (null: look up)";s:11:"phpdoc_name";s:9:"catalogue";}}s:4:"name";s:22:"is_ecommerce_catalogue";s:11:"description";s:53:"Check the current catalogue is an ecommerce catalogue";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Status of ecommerce catalogue check";}}s:28:"is_ecommerce_catalogue_entry";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"Entry ID";s:11:"phpdoc_name";s:8:"entry_id";}}s:4:"name";s:28:"is_ecommerce_catalogue_entry";s:11:"description";s:52:"Check selected entry is an ecommerce catalogue entry";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"Status of entry type check";}}s:29:"render_catalogue_entry_screen";a:6:{s:8:"filename";s:22:"sources/catalogues.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:8:"Entry ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:8:"no_title";s:7:"default";s:13:"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 skip rendering a title";s:11:"phpdoc_name";s:8:"no_title";}i:2;a:7:{s:4:"name";s:20:"attach_to_url_filter";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}}s:4:"name";s:29:"render_catalogue_entry_screen";s:11:"description";s:25:"Display a catalogue entry";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"Tempcode interface to display an entry";}}s:17:"init__catalogues2";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__catalogues2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"catalogue_to_tree";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:14:"Catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:17:"catalogue_to_tree";s:11:"description";s:50:"Converts a non-tree catalogue to a tree catalogue.";s:5:"flags";a:0:{}}s:19:"catalogue_from_tree";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:14:"Catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:19:"catalogue_from_tree";s:11:"description";s:52:"Converts a non-tree catalogue from a tree catalogue.";s:5:"flags";a:0:{}}s:20:"actual_add_catalogue";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The codename of the catalogue";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:65:"The title of the catalogue (either language string map or string)";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:52:"A description (either language string map or string)";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:12:"display_type";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:5:{s:4:"name";s:7:"is_tree";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:84:"Whether the catalogue uses a tree system (as opposed to mere categories in an index)";s:11:"phpdoc_name";s:7:"is_tree";}i:5;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:41:"Hidden notes pertaining to this catalogue";s:11:"phpdoc_name";s:5:"notes";}i:6;a:5:{s:4:"name";s:13:"submit_points";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:61:"How many points a member gets by submitting to this 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";}i:10;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:11;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:20:"actual_add_catalogue";s:11:"description";s:47:"Add a catalogue using all the specified values.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:26:"actual_add_catalogue_field";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:6:"c_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The codename of the catalogue the field is for";s:11:"phpdoc_name";s:6:"c_name";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:60:"The name of the field (either language string map or string)";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:5:"mixed";s:11:"description";s:52:"A description (either language string map or string)";s:11:"phpdoc_name";s:11:"description";}i:3;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:21:"The type of the field";s:11:"phpdoc_name";s:4:"type";}i:4;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:109:"The field order (the field order determines what order the fields are displayed within an entry) (null: next)";s:11:"phpdoc_name";s:5:"order";}i:5;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:46:"Whether this field defines the catalogue order";s:11:"phpdoc_name";s:13:"defines_order";}i:6;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 this is a visible field";s:11:"phpdoc_name";s:7:"visible";}i:7;a:7:{s:4:"name";s:10:"searchable";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 usable as a search key";s:11:"phpdoc_name";s:10:"searchable";}i:8;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:31:"The default value for the field";s:11:"phpdoc_name";s:7:"default";}i:9;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:30:"Whether this field is required";s:11:"phpdoc_name";s:8:"required";}i:10;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:11;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:12;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";}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:46:"Force this ID (null: auto-increment as normal)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:26:"actual_add_catalogue_field";s:11:"description";s:92:"Add a field to the specified catalogue, without disturbing any other data in that catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"Field ID";}}s:21:"actual_edit_catalogue";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:12:{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:33:"The current name of the catalogue";s:11:"phpdoc_name";s:8:"old_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:29:"The new name of the catalogue";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:5:"title";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:3;a:5:{s:4:"name";s:11:"description";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:4;a:5:{s:4:"name";s:12:"display_type";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:5;a:5:{s:4:"name";s:5:"notes";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:5:{s:4:"name";s:13:"submit_points";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:5:{s:4:"name";s:9:"ecommerce";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:6:{s:4:"name";s:17:"send_view_reports";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:5:{s:4:"name";s:19:"default_review_freq";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";}i:10;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:11;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:21:"actual_edit_catalogue";s:11:"description";s:17:"Edit a catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:23:"actual_delete_catalogue";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:7:"ID_TEXT";s:11:"description";s:25:"The name of the catalogue";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:23:"actual_delete_catalogue";s:11:"description";s:19:"Delete a catalogue.";s:5:"flags";a:0:{}}s:27:"actual_edit_catalogue_field";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{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:"The ID of the field";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:6:"c_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:6:"c_name";}i:2;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:43:"The name of the field (null: do not change)";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:47:"Description for the field (null: do not change)";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:96:"The field order (the field order determines what order the fields are displayed within an entry)";s:11:"phpdoc_name";s:5:"order";}i:5;a:5:{s:4:"name";s:13:"defines_order";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:6;a:5:{s:4:"name";s:7:"visible";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:7:"visible";}i:7;a:5:{s:4:"name";s:10:"searchable";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"Whether the field is usable as a search key";s:11:"phpdoc_name";s:10:"searchable";}i:8;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:31:"The default value for the field";s:11:"phpdoc_name";s:7:"default";}i:9;a:5:{s:4:"name";s:8:"required";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:10;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:11;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:12;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";}i:13;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:36:"The field type (null: do not change)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:27:"actual_edit_catalogue_field";s:11:"description";s:23:"Edit a catalogue field.";s:5:"flags";a:0:{}}s:29:"actual_delete_catalogue_field";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:19:"The ID of the field";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:29:"actual_delete_catalogue_field";s:11:"description";s:25:"Delete a catalogue field.";s:5:"flags";a:0:{}}s:29:"actual_add_catalogue_category";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{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:48:"The codename of the catalogue the category is in";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:65:"The title of this category (either language string map or string)";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:52:"A description (either language string map or string)";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:40:"Hidden notes pertaining to this category";s:11:"phpdoc_name";s:5:"notes";}i:4;a:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:81:"The ID of this categories parent (null: a root category, or not a tree catalogue)";s:11:"phpdoc_name";s:9:"parent_id";}i:5;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:55:"The representative image for the category (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:6;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:7;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:8;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:9;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:27:"The order (null: automatic)";s:11:"phpdoc_name";s:5:"order";}i:10;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:11;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:12;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:13;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:29:"actual_add_catalogue_category";s:11:"description";s:24:"Add a catalogue category";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:26:"The ID of the new category";}}s:31:"rebuild_catalogue_cat_treecache";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"rebuild_catalogue_cat_treecache";s:11:"description";s:72:"Re-build the efficient catalogue category tree structure ancestry cache.";s:5:"flags";a:0:{}}s:32:"store_in_catalogue_cat_treecache";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:22:"The ID of the category";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of the parent category (null: no parent)";s:11:"phpdoc_name";s:9:"parent_id";}i:2;a:7:{s:4:"name";s:13:"cleanup_first";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:74:"Whether to delete any possible pre-existing records for the category first";s:11:"phpdoc_name";s:13:"cleanup_first";}}s:4:"name";s:32:"store_in_catalogue_cat_treecache";s:11:"description";s:51:"Update the treecache for a catalogue category node.";s:5:"flags";a:0:{}}s:36:"calculate_category_child_count_cache";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"cat_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:107:"The ID of the category (null: skip, called by some code that didn't realise it didn't impact a tree parent)";s:11:"phpdoc_name";s:6:"cat_id";}i:1;a:7:{s:4:"name";s:17:"recursive_updates";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:129:"Whether to recurse up the tree to force recalculations on other categories (recommended, unless you are doing a complete rebuild)";s:11:"phpdoc_name";s:17:"recursive_updates";}}s:4:"name";s:36:"calculate_category_child_count_cache";s:11:"description";s:43:"Update cache for a categories child counts.";s:5:"flags";a:0:{}}s:30:"actual_edit_catalogue_category";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{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:22:"The ID of the category";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:5:"notes";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:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of the parent category (null: no parent)";s:11:"phpdoc_name";s:9:"parent_id";}i:5;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"Meta keywords for the category";s:11:"phpdoc_name";s:13:"meta_keywords";}i:6;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:33:"Meta description for the category";s:11:"phpdoc_name";s:16:"meta_description";}i:7;a:5:{s:4:"name";s:9:"rep_image";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:55:"The representative image for the category (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:8;a:5:{s:4:"name";s:15:"move_days_lower";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:9;a:5:{s:4:"name";s:16:"move_days_higher";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:10;a:5:{s:4:"name";s:11:"move_target";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:11;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The order";s:11:"phpdoc_name";s:5:"order";}i:12;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:13;a:7:{s:4:"name";s:6:"c_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:40:"The catalogue name (null: do not change)";s:11:"phpdoc_name";s:6:"c_name";}}s:4:"name";s:30:"actual_edit_catalogue_category";s:11:"description";s:26:"Edit a catalogue category.";s:5:"flags";a:0:{}}s:32:"actual_delete_catalogue_category";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:22:"The ID of the category";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:12:"deleting_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:163:"Whether we're deleting everything under the category; if FALSE we will actively reassign child categories and entries up a level (if tree) or deletes (if not tree)";s:11:"phpdoc_name";s:12:"deleting_all";}}s:4:"name";s:32:"actual_delete_catalogue_category";s:11:"description";s:28:"Delete a catalogue category.";s:5:"flags";a:0:{}}s:26:"actual_add_catalogue_entry";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:43:"The ID of the category that the entry is in";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the entry has been validated";s:11:"phpdoc_name";s:9:"validated";}i:2;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"Hidden notes pertaining to the entry";s:11:"phpdoc_name";s:5:"notes";}i:3;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the entry may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:4;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:5;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the entry may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:6;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field IDs, to values, that defines the entries settings";s:11:"phpdoc_name";s:3:"map";}i:7;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:40:"The time the entry was added (null: now)";s:11:"phpdoc_name";s:4:"time";}i:8;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:42:"The entries submitter (null: current user)";s:11:"phpdoc_name";s:9:"submitter";}i:9;a:7:{s:4:"name";s:9:"edit_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:27:"The edit time (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:10;a:7:{s:4:"name";s:5:"views";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:"The number of views";s:11:"phpdoc_name";s:5:"views";}i:11;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:12;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:13;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:26:"actual_add_catalogue_entry";s:11:"description";s:41:"Adds an entry to the specified catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:31:"The ID of the newly added entry";}}s:27:"actual_edit_catalogue_entry";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:15:{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:32:"The ID of the entry being edited";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:43:"The ID of the category that the entry is in";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the entry has been validated";s:11:"phpdoc_name";s:9:"validated";}i:3;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"Hidden notes pertaining to the entry";s:11:"phpdoc_name";s:5:"notes";}i:4;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the entry may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:5;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:6;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the entry may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:7;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field IDs, to values, that defines the entries settings";s:11:"phpdoc_name";s:3:"map";}i:8;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:51:"Meta keywords for this resource (null: do not edit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:9;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:54:"Meta description for this resource (null: do not edit)";s:11:"phpdoc_name";s:16:"meta_description";}i:10;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:11;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:12;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:13;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:14;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:88:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:27:"actual_edit_catalogue_entry";s:11:"description";s:34:"Edit the specified catalogue entry";s:5:"flags";a:0:{}}s:29:"actual_delete_catalogue_entry";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:29:"The ID of the entry to delete";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:29:"actual_delete_catalogue_entry";s:11:"description";s:25:"Delete a catalogue entry.";s:5:"flags";a:0:{}}s:23:"_convert_data_encodings";a:5:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"known_utf8";s:7:"default";s:13:"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 we know we are working in utf-8. This is the case for AJAX calls.";s:11:"phpdoc_name";s:10:"known_utf8";}}s:4:"name";s:23:"_convert_data_encodings";s:11:"description";s:211:"Performs lots of magic to make sure data encodings are converted correctly. Input, and output too (as often stores internally in UTF or performs automatic dynamic conversions from internal to external charsets).";s:5:"flags";a:0:{}}s:11:"unichrm_hex";a:6:{s:8:"filename";s:26:"sources/character_sets.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:31:"Regular expression match array.";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:11:"unichrm_hex";s:11:"description";s:82:"Convert a unicode character number to a unicode string. Callback for preg_replace.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:42:"Converted data (false: could not convert).";}}s:7:"unichrm";a:6:{s:8:"filename";s:26:"sources/character_sets.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:31:"Regular expression match array.";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:7:"unichrm";s:11:"description";s:82:"Convert a unicode character number to a unicode string. Callback for preg_replace.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:42:"Converted data (false: could not convert).";}}s:6:"unichr";a:6:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"Character number.";s:11:"phpdoc_name";s:1:"c";}}s:4:"name";s:6:"unichr";s:11:"description";s:112:"Convert a unicode character number to a HTML-entity enabled string, using lower ASCII characters where possible.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:42:"Converted data (false: could not convert).";}}s:16:"foxy_utf8_to_nce";a:6:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:4:"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:11:"Input text.";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:16:"foxy_utf8_to_nce";s:11:"description";s:203:"Convert text to an entity format via unicode, compatible with the GD TTF functions. Originally taken from php manual but heavily modified. Passed text is assumed to be in the get_charset() character set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:47:"Output 7-bit unicode-entity-encoded ASCII text.";}}s:10:"utf8tohtml";a:6:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"utf8";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:6:"Input.";s:11:"phpdoc_name";s:4:"utf8";}}s:4:"name";s:10:"utf8tohtml";s:11:"description";s:132:"Turn utf-8 characters into unicode HTML entities. Useful as GD truetype functions need this. Based on function in PHP code comments.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Output.";}}s:37:"do_simple_environment_utf8_conversion";a:5:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"do_simple_environment_utf8_conversion";s:11:"description";s:114:"Do a UTF8 conversion on the environmental GET/POST parameters (ISO-8859-1 charset, which PHP supports internally).";s:5:"flags";a:0:{}}s:30:"do_environment_utf8_conversion";a:5:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"from_charset";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:55:"Charset that was used to encode the environmental data.";s:11:"phpdoc_name";s:12:"from_charset";}}s:4:"name";s:30:"do_environment_utf8_conversion";s:11:"description";s:62:"Do a UTF8 conversion on the environmental GET/POST parameters.";s:5:"flags";a:0:{}}s:24:"will_be_unicode_neutered";a:6:{s:8:"filename";s:26:"sources/character_sets.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:14:"Data to check.";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:24:"will_be_unicode_neutered";s:11:"description";s:431:"Guard for entity_utf8_decode. Checks that the data can be stripped so there is no unicode left. Either the htmlentities function must convert mechanically to entity-characters or all higher ascii character codes (which are actually unicode control codes in a unicode interpretation) that are used happen to be linked to named entities.PHP's utf-8 support may not be great. For example, we have seen emoji characters not converting.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether we are good to execute entity_utf8_decode.";}}s:28:"convert_to_internal_encoding";a:6:{s:8:"filename";s:26:"sources/character_sets.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:16:"Data to convert.";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:13:"input_charset";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:78:"Charset to convert from (null: that read by the last http_download_file call).";s:11:"phpdoc_name";s:13:"input_charset";}i:2;a:7:{s:4:"name";s:16:"internal_charset";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:47:"Charset to convert to (null: current encoding).";s:11:"phpdoc_name";s:16:"internal_charset";}}s:4:"name";s:28:"convert_to_internal_encoding";s:11:"description";s:61:"Convert some data from one encoding to the internal encoding.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Converted data.";}}s:18:"entity_utf8_decode";a:6:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:2:{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:16:"Data to convert.";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:16:"internal_charset";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"Charset to convert to.";s:11:"phpdoc_name";s:16:"internal_charset";}}s:4:"name";s:18:"entity_utf8_decode";s:11:"description";s:110:"Convert some data from UTF to a character set PHP supports, using HTML entities where there's no direct match.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:42:"Converted data (false: could not convert).";}}s:10:"init__chat";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"init__chat";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"render_chat_box";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:4:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:15:"render_chat_box";s:11:"description";s:59:"Get Tempcode for a chatroom 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:15:"messages_script";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"messages_script";s:11:"description";s:35:"High-level messages script handling";s:5:"flags";a:0:{}}s:17:"member_befriended";a:6:{s:8:"filename";s:16:"sources/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:24:"The member being checked";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:17:"member_befriended";s:11:"description";s:53:"Find if a member is befriended by the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the member is befriended";}}s:27:"filter_invites_for_blocking";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"people";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"Comma-separated people list";s:11:"phpdoc_name";s:6:"people";}}s:4:"name";s:27:"filter_invites_for_blocking";s:11:"description";s:112:"Filter an invite list to make sure people who are blocking don't get drawn in and hence their blocking unmasked.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:36:"Filtered comma-separated people list";}}s:15:"chat_room_prune";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"room_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:25:"Room ID (null: all rooms)";s:11:"phpdoc_name";s:7:"room_id";}}s:4:"name";s:15:"chat_room_prune";s:11:"description";s:29:"Prune membership of chatroom.";s:5:"flags";a:0:{}}s:26:"_chat_messages_script_ajax";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{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:76:"Room ID (or -1 to mean 'all' as used for IM global process, -2 to mean none)";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:7:{s:4:"name";s:7:"backlog";s:7:"default";s:13:"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:"Output the backlog?";s:11:"phpdoc_name";s:7:"backlog";}i:2;a:7:{s:4:"name";s:10:"message_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:68:"Latest received message ID (null: we're not getting latest messages)";s:11:"phpdoc_name";s:10:"message_id";}i:3;a:7:{s:4:"name";s:8:"event_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:127:"Latest event ID (null: we're not getting events, but we do request a null event so we can use that as a future reference point)";s:11:"phpdoc_name";s:8:"event_id";}i:4;a:7:{s:4:"name";s:13:"events_output";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:23:"Events output to append";s:11:"phpdoc_name";s:13:"events_output";}}s:4:"name";s:26:"_chat_messages_script_ajax";s:11:"description";s:170:"Output messages (in XML format) from up to five minutes ago (give somebody who's just joined the chatroom some chat backlog), or the messages posted since the last check.";s:5:"flags";a:0:{}}s:14:"chatter_active";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:2:{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:9:"Member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:7:"room_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:21:"Room ID (null: lobby)";s:11:"phpdoc_name";s:7:"room_id";}}s:4:"name";s:14:"chatter_active";s:11:"description";s:56:"Find whether a member is active in chat (i.e. not away).";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 active";}}s:17:"is_chat_moderator";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:3:{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:9:"Member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;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:7:"Room ID";s:11:"phpdoc_name";s:7:"room_id";}i:2;a:5:{s:4:"name";s:10:"room_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:23:"Room owner (null: none)";s:11:"phpdoc_name";s:10:"room_owner";}}s:4:"name";s:17:"is_chat_moderator";s:11:"description";s:51:"Find whether a member is a moderator of a chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the member is a moderator of the chatroom";}}s:23:"_chat_post_message_ajax";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{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:7:"Room ID";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The message";s:11:"phpdoc_name";s:7:"message";}i:2;a:5:{s:4:"name";s:4:"font";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"Font name";s:11:"phpdoc_name";s:4:"font";}i:3;a:5:{s:4:"name";s:6:"colour";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Font colour";s:11:"phpdoc_name";s:6:"colour";}i:4;a:5:{s:4:"name";s:13:"first_message";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:74:"Whether this is the first message sent out to this room, since some change";s:11:"phpdoc_name";s:13:"first_message";}}s:4:"name";s:23:"_chat_post_message_ajax";s:11:"description";s:39:"Handle an AJAX message posting request.";s:5:"flags";a:0:{}}s:17:"chat_post_message";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{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:43:"The room ID for the message to be posted in";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"The message body";s:11:"phpdoc_name";s:7:"message";}i:2;a:5:{s:4:"name";s:9:"font_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:29:"The font name for the message";s:11:"phpdoc_name";s:9:"font_name";}i:3;a:5:{s:4:"name";s:11:"text_colour";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:31:"The text colour for the message";s:11:"phpdoc_name";s:11:"text_colour";}i:4;a:7:{s:4:"name";s:8:"wrap_pos";s:7:"default";i:60;s:11:"default_raw";s:2:"60";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:33:"The wrap position for the message";s:11:"phpdoc_name";s:8:"wrap_pos";}}s:4:"name";s:17:"chat_post_message";s:11:"description";s:184:"Enter a message into the database for the specified room, and with the specified parameters. The message is filtered for banned words, and is compressed into a Tempcode storage format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether the message was successfully posted or not";}}s:20:"get_chatters_in_room";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"room_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:25:"The room ID (null: lobby)";s:11:"phpdoc_name";s:7:"room_id";}}s:4:"name";s:20:"get_chatters_in_room";s:11:"description";s:231:"Get the people who have posted a message in the specified room within the last x minutes (defaults to five). Note that this function performs no pruning- the chat lobby will do that. It does do an activity time-range select though.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:47:"A map of members in the room. User ID=>Username";}}s:24:"get_chatters_in_room_tpl";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"users";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:54:"A mapping (user=>username) of the chatters in the room";s:11:"phpdoc_name";s:5:"users";}}s:4:"name";s:24:"get_chatters_in_room_tpl";s:11:"description";s:64:"Get some template code showing the number of chatters in a room.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The Tempcode";}}s:17:"get_chatroom_name";a:6:{s:8:"filename";s:16:"sources/chat.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:11:"The room ID";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:7:{s:4:"name";s:10:"allow_null";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Allow the chatroom to not be found (i.e. don't die if it can't be)";s:11:"phpdoc_name";s:10:"allow_null";}}s:4:"name";s:17:"get_chatroom_name";s:11:"description";s:65:"Get the textual name of the specified chatroom, from its room ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:31:"The room name (null: not found)";}}s:15:"get_chatroom_id";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"room_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:24:"The name of the chatroom";s:11:"phpdoc_name";s:9:"room_name";}i:1;a:7:{s:4:"name";s:14:"must_not_be_im";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:85:"Make sure the room is not an IM room. If it is an IM room, pretend it does not exist.";s:11:"phpdoc_name";s:14:"must_not_be_im";}}s:4:"name";s:15:"get_chatroom_id";s:11:"description";s:57:"Get the ID of the specified chatroom, from its room name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of the chatroom (null: no such chatroom)";}}s:18:"chat_get_all_rooms";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"chat_get_all_rooms";s:11:"description";s:34:"Get an array of all the chatrooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"An array of all the chatrooms";}}s:21:"chat_get_room_content";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:7:"room_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The room ID (null: for all IM)";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:5:{s:4:"name";s:6:"_rooms";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"Rooms database rows that we'll need";s:11:"phpdoc_name";s:6:"_rooms";}i:2;a:7:{s:4:"name";s:12:"max_messages";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:64:"The maximum number of messages to be returned (null: no maximum)";s:11:"phpdoc_name";s:12:"max_messages";}i:3;a:7:{s:4:"name";s:11:"dereference";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:79:"Whether to dereference the returned messages (i.e. lookup the language strings)";s:11:"phpdoc_name";s:11:"dereference";}i:4;a:7:{s:4:"name";s:11:"downloading";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether to return the messages in a downloadeable format (using the templates for log downloading)";s:11:"phpdoc_name";s:11:"downloading";}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:63:"The datetime stamp to start gathering messages from (null: all)";s:11:"phpdoc_name";s:5:"start";}i:6;a:7:{s:4:"name";s:6:"finish";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:69:"The datetime stamp to stop gathering messages at (null: current time)";s:11:"phpdoc_name";s:6:"finish";}i:7;a:7:{s:4:"name";s:6:"uptoid";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:64:"The lowest message ID to return (null: no special lowest number)";s:11:"phpdoc_name";s:6:"uptoid";}i:8;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:46:"The zone the chat module is in (null: find it)";s:11:"phpdoc_name";s:4:"zone";}i:9;a:7:{s:4:"name";s:13:"entering_room";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:84:"The language string ID for the "entering room" message (null: not entering the room)";s:11:"phpdoc_name";s:13:"entering_room";}i:10;a:7:{s:4:"name";s:18:"return_my_messages";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Return the current user's messages?";s:11:"phpdoc_name";s:18:"return_my_messages";}i:11;a:7:{s:4:"name";s:22:"return_system_messages";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Return system messages";s:11:"phpdoc_name";s:22:"return_system_messages";}}s:4:"name";s:21:"chat_get_room_content";s:11:"description";s:285:"Get a multidimensional array of the content of the specified chatroom.It automatically parses for Comcode, chatcode, banned words, emoticons, and uses complex logic to decide whether or not to show each message; based upon who the member is, the message content, and other such inputs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"An array of all the messages collected according to the search criteria";}}s:24:"_deal_with_chatcode_tags";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The text we are using";s:11:"phpdoc_name";s:4:"text";}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:27:"The tag name we are parsing";s:11:"phpdoc_name";s:3:"tag";}i:2;a:5:{s:4:"name";s:7:"pm_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"1st param";s:11:"phpdoc_name";s:7:"pm_user";}i:3;a:5:{s:4:"name";s:10:"pm_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"2nd param";s:11:"phpdoc_name";s:10:"pm_message";}i:4;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The username of who made this chatcode";s:11:"phpdoc_name";s:8:"username";}i:5;a:5:{s:4:"name";s:12:"max_messages";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:64:"The maximum number of messages to be returned (null: no maximum)";s:11:"phpdoc_name";s:12:"max_messages";}i:6;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The zone that our chat module is in";s:11:"phpdoc_name";s:4:"zone";}i:7;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:29:"The room ID the message is in";s:11:"phpdoc_name";s:7:"room_id";}i:8;a:5:{s:4:"name";s:14:"system_message";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether this is within a system message";s:11:"phpdoc_name";s:14:"system_message";}}s:4:"name";s:24:"_deal_with_chatcode_tags";s:11:"description";s:59:"Parse chat code tags (called multiple times, for each tag).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A pair: whether the message was deleted, and the new text of the message";}}s:27:"_deal_with_chatcode_private";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:7:"pm_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"The member a private message should be sent to";s:11:"phpdoc_name";s:7:"pm_user";}i:1;a:5:{s:4:"name";s:10:"pm_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The private message";s:11:"phpdoc_name";s:10:"pm_message";}i:2;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The username of who made this chatcode";s:11:"phpdoc_name";s:8:"username";}i:3;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The text we are using";s:11:"phpdoc_name";s:4:"text";}i:4;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:29:"The room ID the message is in";s:11:"phpdoc_name";s:7:"room_id";}i:5;a:5:{s:4:"name";s:14:"system_message";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether this is within a system message";s:11:"phpdoc_name";s:14:"system_message";}}s:4:"name";s:27:"_deal_with_chatcode_private";s:11:"description";s:36:"Parse private message chat code tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A pair: whether the message was deleted, and the new text of the message";}}s:26:"_deal_with_chatcode_invite";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"pm_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:41:"Comma-separated list of members to invite";s:11:"phpdoc_name";s:7:"pm_user";}i:1;a:5:{s:4:"name";s:10:"pm_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The room name";s:11:"phpdoc_name";s:10:"pm_message";}i:2;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The username of who made this chatcode";s:11:"phpdoc_name";s:8:"username";}i:3;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The text we are using";s:11:"phpdoc_name";s:4:"text";}i:4;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The zone the chat module is in";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:26:"_deal_with_chatcode_invite";s:11:"description";s:31:"Parse invitation chat code tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A pair: whether the message was deleted, and the new text of the message";}}s:27:"_deal_with_chatcode_newroom";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"pm_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The room name";s:11:"phpdoc_name";s:7:"pm_user";}i:1;a:5:{s:4:"name";s:10:"pm_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"Comma-separated list of members to allow in";s:11:"phpdoc_name";s:10:"pm_message";}i:2;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The username of who made this chatcode";s:11:"phpdoc_name";s:8:"username";}i:3;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The text we are using";s:11:"phpdoc_name";s:4:"text";}i:4;a:5:{s:4:"name";s:12:"max_messages";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:64:"The maximum number of messages to be returned (null: no maximum)";s:11:"phpdoc_name";s:12:"max_messages";}}s:4:"name";s:27:"_deal_with_chatcode_newroom";s:11:"description";s:34:"Parse room creation chat code tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A pair: whether the message was deleted, and the new text of the message";}}s:22:"_remove_empty_messages";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"messages";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Original list of messages";s:11:"phpdoc_name";s:8:"messages";}i:1;a:5:{s:4:"name";s:11:"message_ids";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"List of message IDs to keep";s:11:"phpdoc_name";s:11:"message_ids";}}s:4:"name";s:22:"_remove_empty_messages";s:11:"description";s:95:"Remove any messages from the list of messages that aren't mentioned in the list of message IDs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A new list of messages";}}s:22:"parse_allow_list_input";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"_allow";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A comma-separated list of usernames";s:11:"phpdoc_name";s:6:"_allow";}}s:4:"name";s:22:"parse_allow_list_input";s:11:"description";s:125:"Takes a comma-separated list of usernames, split it up, convert all the usernames to IDs, and put it all back together again.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:36:"A comma-separated list of member IDs";}}s:21:"check_chatroom_access";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"room";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:65:"The row of the chatroom to check for access OR its ID (AUTO_LINK)";s:11:"phpdoc_name";s:4:"room";}i:1;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:73:"Whether to return false if there is no access (as opposed to bombing out)";s:11:"phpdoc_name";s:3:"ret";}i:2;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 to check as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:16:"must_be_explicit";s:7:"default";s:13:"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 also ensure for $member_id having explicit access";s:11:"phpdoc_name";s:16:"must_be_explicit";}}s:4:"name";s:21:"check_chatroom_access";s:11:"description";s:50:"Check whether a member has access to the chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether the current member has access to the chatroom";}}s:18:"get_chat_sound_tpl";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_chat_sound_tpl";s:11:"description";s:85:"Get a template that will set up the chat sound effects as for what this member needs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"Template to set up chat sound effects.";}}s:12:"blocking_add";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"blocker";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:19:"The member blocking";s:11:"phpdoc_name";s:7:"blocker";}i:1;a:5:{s:4:"name";s:7:"blocked";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:24:"The member being blocked";s:11:"phpdoc_name";s:7:"blocked";}i:2;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:40:"The logged time of the block (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:12:"blocking_add";s:11:"description";s:15:"Block a member.";s:5:"flags";a:0:{}}s:15:"blocking_remove";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"blocker";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:21:"The member unblocking";s:11:"phpdoc_name";s:7:"blocker";}i:1;a:5:{s:4:"name";s:7:"blocked";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member being unblocked";s:11:"phpdoc_name";s:7:"blocked";}}s:4:"name";s:15:"blocking_remove";s:11:"description";s:17:"Unblock a member.";s:5:"flags";a:0:{}}s:10:"friend_add";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"likes";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:22:"The member befriending";s:11:"phpdoc_name";s:5:"likes";}i:1;a:5:{s:4:"name";s:5:"liked";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:27:"The member being befriended";s:11:"phpdoc_name";s:5:"liked";}i:2;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:45:"The logged time of the friendship (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:10:"friend_add";s:11:"description";s:13:"Add a friend.";s:5:"flags";a:0:{}}s:13:"friend_remove";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"likes";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:22:"The member befriending";s:11:"phpdoc_name";s:5:"likes";}i:1;a:5:{s:4:"name";s:5:"liked";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"The member being dumped";s:11:"phpdoc_name";s:5:"liked";}}s:4:"name";s:13:"friend_remove";s:11:"description";s:25:"Remove ('dump') a friend.";s:5:"flags";a:0:{}}s:19:"get_chatroom_fields";a:6:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:9:{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 chatroom ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"is_made_by_me";s:7:"default";s:13:"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 the room is being made as a private room by the current member";s:11:"phpdoc_name";s:13:"is_made_by_me";}i:2;a:7:{s:4:"name";s:9:"room_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:13:"The room name";s:11:"phpdoc_name";s:9:"room_name";}i:3;a:7:{s:4:"name";s:7:"welcome";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:"The welcome message";s:11:"phpdoc_name";s:7:"welcome";}i:4;a:7:{s:4:"name";s:8:"username";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 owner username";s:11:"phpdoc_name";s:8:"username";}i:5;a:7:{s:4:"name";s:6:"allow2";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:76:"The comma-separated list of users that may access it (blank: no restriction)";s:11:"phpdoc_name";s:6:"allow2";}i:6;a:7:{s:4:"name";s:13:"allow2_groups";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:81:"The comma-separated list of usergroups that may access it (blank: no restriction)";s:11:"phpdoc_name";s:13:"allow2_groups";}i:7;a:7:{s:4:"name";s:9:"disallow2";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:80:"The comma-separated list of users that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:9:"disallow2";}i:8;a:7:{s:4:"name";s:16:"disallow2_groups";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:85:"The comma-separated list of usergroups that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:16:"disallow2_groups";}}s:4:"name";s:19:"get_chatroom_fields";s:11:"description";s:46:"Get form fields for adding/editing a chatroom.";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:24:"read_in_chat_perm_fields";a:6:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"read_in_chat_perm_fields";s:11:"description";s:61:"Read in chat permission fields, from the complex posted data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"A tuple of permission fields";}}s:12:"add_chatroom";a:6:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:7:"welcome";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"The welcome message";s:11:"phpdoc_name";s:7:"welcome";}i:1;a:5:{s:4:"name";s:9:"room_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The room name";s:11:"phpdoc_name";s:9:"room_name";}i:2;a:5:{s:4:"name";s:10:"room_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:14:"The room owner";s:11:"phpdoc_name";s:10:"room_owner";}i:3;a:5:{s:4:"name";s:6:"allow2";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:76:"The comma-separated list of users that may access it (blank: no restriction)";s:11:"phpdoc_name";s:6:"allow2";}i:4;a:5:{s:4:"name";s:13:"allow2_groups";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:81:"The comma-separated list of usergroups that may access it (blank: no restriction)";s:11:"phpdoc_name";s:13:"allow2_groups";}i:5;a:5:{s:4:"name";s:9:"disallow2";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:80:"The comma-separated list of users that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:9:"disallow2";}i:6;a:5:{s:4:"name";s:16:"disallow2_groups";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:85:"The comma-separated list of usergroups that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:16:"disallow2_groups";}i:7;a:5:{s:4:"name";s:13:"room_language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:17:"The room language";s:11:"phpdoc_name";s:13:"room_language";}i:8;a:7:{s:4:"name";s:5:"is_im";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:24:"Whether it is an IM room";s:11:"phpdoc_name";s:5:"is_im";}}s:4:"name";s:12:"add_chatroom";s:11:"description";s:15:"Add a chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:15:"The chatroom ID";}}s:13:"edit_chatroom";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:9:{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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:7:"welcome";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"The welcome message";s:11:"phpdoc_name";s:7:"welcome";}i:2;a:5:{s:4:"name";s:9:"room_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The room name";s:11:"phpdoc_name";s:9:"room_name";}i:3;a:5:{s:4:"name";s:10:"room_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:14:"The room owner";s:11:"phpdoc_name";s:10:"room_owner";}i:4;a:5:{s:4:"name";s:6:"allow2";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:76:"The comma-separated list of users that may access it (blank: no restriction)";s:11:"phpdoc_name";s:6:"allow2";}i:5;a:5:{s:4:"name";s:13:"allow2_groups";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:81:"The comma-separated list of usergroups that may access it (blank: no restriction)";s:11:"phpdoc_name";s:13:"allow2_groups";}i:6;a:5:{s:4:"name";s:9:"disallow2";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:80:"The comma-separated list of users that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:9:"disallow2";}i:7;a:5:{s:4:"name";s:16:"disallow2_groups";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:85:"The comma-separated list of usergroups that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:16:"disallow2_groups";}i:8;a:5:{s:4:"name";s:13:"room_language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:17:"The room language";s:11:"phpdoc_name";s:13:"room_language";}}s:4:"name";s:13:"edit_chatroom";s:11:"description";s:16:"Edit a chatroom.";s:5:"flags";a:0:{}}s:15:"delete_chatroom";a:5:{s:8:"filename";s:17:"sources/chat2.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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"delete_chatroom";s:11:"description";s:18:"Delete a chatroom.";s:5:"flags";a:0:{}}s:20:"delete_chat_messages";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"where";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:37:"Where query to specify what to delete";s:11:"phpdoc_name";s:5:"where";}}s:4:"name";s:20:"delete_chat_messages";s:11:"description";s:21:"Delete chat messages.";s:5:"flags";a:0:{}}s:20:"delete_all_chatrooms";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"delete_all_chatrooms";s:11:"description";s:21:"Delete all chatrooms.";s:5:"flags";a:0:{}}s:15:"chatroom_ban_to";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:2:{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:17:"The member to ban";s:11:"phpdoc_name";s:9:"member_id";}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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"chatroom_ban_to";s:11:"description";s:29:"Ban a member from a chatroom.";s:5:"flags";a:0:{}}s:17:"chatroom_unban_to";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:2:{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:19:"The member to unban";s:11:"phpdoc_name";s:9:"member_id";}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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"chatroom_unban_to";s:11:"description";s:31:"Unban a member from a chatroom.";s:5:"flags";a:0:{}}s:24:"delete_chatroom_messages";a:5:{s:8:"filename";s:17:"sources/chat2.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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:24:"delete_chatroom_messages";s:11:"description";s:34:"Delete all messages in a chatroom.";s:5:"flags";a:0:{}}s:16:"enter_chat_lobby";a:5:{s:8:"filename";s:22:"sources/chat_lobby.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"enter_chat_lobby";s:11:"description";s:65:"Enter the current member to the chat lobby / Mark them available.";s:5:"flags";a:0:{}}s:16:"show_im_contacts";a:6:{s:8:"filename";s:22:"sources/chat_lobby.php";s:10:"parameters";a:3:{i:0;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:35:"The member ID (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:7:"simpler";s:7:"default";s:13:"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 show a simpler, more compact, UI.";s:11:"phpdoc_name";s:7:"simpler";}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:32:"Maximum to show (null: default).";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:16:"show_im_contacts";s:11:"description";s:86:"Show IM contacts, with online/offline status and clickability to initiate IM sessions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The contact UI.";}}s:23:"handle_chatroom_pruning";a:6:{s:8:"filename";s:22:"sources/chat_lobby.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:41:"The row of the chatroom to possibly prune";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:23:"handle_chatroom_pruning";s:11:"description";s:34:"Prune timed-out private chatrooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the room was pruned";}}s:16:"chat_logs_script";a:5:{s:8:"filename";s:21:"sources/chat_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"chat_logs_script";s:11:"description";s:24:"Pass out chat log files.";s:5:"flags";a:0:{}}s:11:"chat_poller";a:5:{s:8:"filename";s:23:"sources/chat_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"chat_poller";s:11:"description";s:81:"Function to quickly (efficiently) check to see if there's been any chat activity.";s:5:"flags";a:0:{}}s:14:"chat_null_exit";a:5:{s:8:"filename";s:23:"sources/chat_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"chat_null_exit";s:11:"description";s:35:"Exit the code saying "no messages".";s:5:"flags";a:0:{}}s:15:"shoutbox_script";a:6:{s:8:"filename";s:25:"sources/chat_shoutbox.php";s:10:"parameters";a:3:{i:0;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:59:"Whether to get the output instead of outputting it directly";s:11:"phpdoc_name";s:3:"ret";}i:1;a:7:{s:4:"name";s:7:"room_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:"Chatroom ID (null: read from environment)";s:11:"phpdoc_name";s:7:"room_id";}i:2;a:7:{s:4:"name";s:12:"num_messages";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:68:"The maximum number of messages to show (null: read from environment)";s:11:"phpdoc_name";s:12:"num_messages";}}s:4:"name";s:15:"shoutbox_script";s:11:"description";s:28:"Outputs the shoutbox iframe.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:35:"Output (null: outputted it already)";}}s:14:"get_effect_set";a:6:{s:8:"filename";s:23:"sources/chat_sounds.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:16:"only_overridable";s:7:"default";s:13:"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:"Map to null if it is not overridable.";s:11:"phpdoc_name";s:16:"only_overridable";}}s:4:"name";s:14:"get_effect_set";s:11:"description";s:49:"Get the list of all available chat sound effects.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:3:"map";s:11:"description";s:73:"All available sound effects (mapping between base code, and actual code).";}}s:19:"get_effect_settings";a:6:{s:8:"filename";s:23:"sources/chat_sounds.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:9:"full_urls";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to use full URLs in the mappings.";s:11:"phpdoc_name";s:9:"full_urls";}i:1;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:73:"Get settings overridden for this specific member (null: global settings).";s:11:"phpdoc_name";s:10:"for_member";}i:2;a:7:{s:4:"name";s:11:"all_members";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:113:"Get global settings and settings overridden for all members (if this is true we'd expect $for_member to be null).";s:11:"phpdoc_name";s:11:"all_members";}}s:4:"name";s:19:"get_effect_settings";s:11:"description";s:111:"Get a list of template mappings for the current member, between sound effect IDs and the URLs to the mp3 fiels.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The template mappings.";}}s:16:"get_num_chatters";a:6:{s:8:"filename";s:22:"sources/chat_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_num_chatters";s:11:"description";s:215:"Get the number of people using the chat system at the moment. Note that this is intentionally different from 'users online' even if site wide IM is enabled- it has a 60 second timeout, so it really is active people.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:39:"The number of people on the chat system";}}s:17:"get_num_chatrooms";a:6:{s:8:"filename";s:22:"sources/chat_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_num_chatrooms";s:11:"description";s:118:"Get the number of chatrooms in the database. By default, there is only one, but more may be added via the admin panel.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:39:"The number of chatrooms in the database";}}s:17:"get_num_chatposts";a:6:{s:8:"filename";s:22:"sources/chat_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_num_chatposts";s:11:"description";s:56:"Get the total number of chat posts in all the chatrooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:40:"The number of chat posts in the database";}}s:18:"cns_field_editable";a:6:{s:8:"filename";s:33:"sources/cns_field_editability.php";s:10:"parameters";a:2:{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:10:"Field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:12:"special_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:99:"The special type of the user (built-in types are: , ldap, httpauth, )";s:11:"phpdoc_name";s:12:"special_type";}}s:4:"name";s:18:"cns_field_editable";s:11:"description";s:132:"Find is a field is editable.Called for fields that have a fair chance of being set to auto-sync, and hence be locked to local edits.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the field is editable";}}s:23:"_helper_apply_emoticons";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}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:58:"Only emoticons the given member can see (null: don't care)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"_helper_apply_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:29:"_helper_make_post_forum_topic";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:21:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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: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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:4;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:5;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:6;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:7;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:8;a:5:{s:4:"name";s:11:"content_url";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:9;a:5:{s:4:"name";s:4:"time";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:39:"The topic time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:10;a:5:{s:4:"name";s:2:"ip";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:11;a:5:{s:4:"name";s:9:"validated";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:12;a:5:{s:4:"name";s:15:"topic_validated";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:13;a:5:{s:4:"name";s:16:"skip_post_checks";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:14;a:5:{s:4:"name";s:20:"poster_name_if_guest";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:15;a:5:{s:4:"name";s:9:"parent_id";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:16;a:5:{s:4:"name";s:10:"staff_only";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:17;a:5:{s:4:"name";s:32:"no_notify_for__notification_code";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:18;a:5:{s:4:"name";s:28:"no_notify_for__code_category";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:19;a:5:{s:4:"name";s:9:"time_post";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:20;a:5:{s:4:"name";s:21:"spacer_post_member_id";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:29:"_helper_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:25:"_helper_show_forum_topics";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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:3;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:4;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:5;a:5:{s:4:"name";s:18:"filter_topic_title";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:6;a:5:{s:4:"name";s:24:"filter_topic_description";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:7;a:5:{s:4:"name";s:16:"show_first_posts";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:8;a:6:{s:4:"name";s:8:"date_key";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:9;a:5:{s:4:"name";s:3:"hot";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:10;a:5:{s:4:"name";s:9:"open_only";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:25:"_helper_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:"not_like_spacer_posts";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";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:5:"field";}}s:4:"name";s:21:"not_like_spacer_posts";s:11:"description";s:96:"Get a bit of SQL to make sure that a DB field is not like a spacer post in any of the languages.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:29:"_helper_get_forum_topic_posts";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:35:"The topic ID (null: does not exist)";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:8:"?integer";s:11:"description";s:70:"The comment count will be returned here by reference (null: no return)";s:11:"phpdoc_name";s:5:"count";}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:45:"Maximum comments to returned (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:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:5;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:6;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:7;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:8;a:7:{s:4:"name";s:8:"post_ids";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:8:"post_ids";}i:9;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:10;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:35:"date compound_rating average_rating";}}s:4:"name";s:29:"_helper_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:34:"_helper_get_post_remaining_details";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}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:25:"Topic the posts come from";s:11:"phpdoc_name";s:8:"topic_id";}i:2;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:34:"_helper_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:28:"_helper_get_emoticon_chooser";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}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:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:28:"_helper_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:22:"_forum_authorise_login";a:6:{s:8:"filename";s:40:"sources/cns_forum_driver_helper_auth.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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:3;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:4;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:5;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:22:"_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:35:"_helper_install_create_custom_field";a:6:{s:8:"filename";s:43:"sources/cns_forum_driver_helper_install.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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:3;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:4;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:5;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:6;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:7;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:8;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:9;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:10;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:35:"_helper_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:"_helper_install_specifics";a:6:{s:8:"filename";s:43:"sources/cns_forum_driver_helper_install.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"_helper_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:30:"_helper_install_test_load_from";a:6:{s:8:"filename";s:43:"sources/cns_forum_driver_helper_install.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:30:"_helper_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:16:"init__cns_forums";a:5:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__cns_forums";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"render_forum_box";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:6:{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:9:"Forum row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_forum_box";s:11:"description";s:19:"Render a forum box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The forum box";}}s:20:"get_forum_access_sql";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"Field name.";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_forum_access_sql";s:11:"description";s:53:"Get SQL clause to limit a query to accessible forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"SQL clause.";}}s:22:"cns_organise_into_tree";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"all_forums";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:90:"The list of all forum rows (be aware that this will get modified for performance reasons).";s:11:"phpdoc_name";s:10:"all_forums";}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:70:"The forum row that we are taking as the root of our current recursion.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:22:"cns_organise_into_tree";s:11:"description";s:52:"Organise a list of forum rows into a tree structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The child list of $forum_id.";}}s:30:"cns_get_all_subordinate_forums";a:6:{s:8:"filename";s:22:"sources/cns_forums.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:57:"The ID of the forum we are finding subordinate forums of.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:7:{s:4:"name";s:14:"create_or_list";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:85:"The field name to use in the OR list (null: do not make an OR list, return an array).";s:11:"phpdoc_name";s:14:"create_or_list";}i:2;a:7:{s:4:"name";s:4:"tree";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:88:"The forum tree structure (null: unknown, it will be found using cns_organise_into_tree).";s:11:"phpdoc_name";s:4:"tree";}i:3;a:7:{s:4:"name";s:18:"ignore_permissions";s:7:"default";s:13:"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 ignore permissions in this.";s:11:"phpdoc_name";s:18:"ignore_permissions";}}s:4:"name";s:30:"cns_get_all_subordinate_forums";s:11:"description";s:53:"Gets a list of subordinate forums of a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:48:"The list (is either a true list, or an OR list).";}}s:22:"cns_may_moderate_forum";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:2:{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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}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:37:"The member ID (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_may_moderate_forum";s:11:"description";s:51:"Find whether a member may moderate a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:28:"cns_get_forum_parent_or_list";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:2:{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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;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:104:"The ID of the parent forum (-1: get it from the DB) (null: there is no parent, as it is the root forum).";s:11:"phpdoc_name";s:9:"parent_id";}}s:4:"name";s:28:"cns_get_forum_parent_or_list";s:11:"description";s:81:"Get an OR list of a forums parents, suited for selection from the f_topics table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"The OR list.";}}s:21:"cns_forum_breadcrumbs";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:15:"end_point_forum";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:143:"The ID of the forum we are at in our path (null: end of recursion) (false: no forum ID available, this_name and parent_forum must not be null).";s:11:"phpdoc_name";s:15:"end_point_forum";}i:1;a:7:{s:4:"name";s:9:"this_name";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:78:"The name of the given forum as string or Tempcode (null: find it from the DB).";s:11:"phpdoc_name";s:9:"this_name";}i:2;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:64:"The parent forum of the given forum (null: find it from the DB).";s:11:"phpdoc_name";s:12:"parent_forum";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether this is being called as the recursion start of deriving the breadcrumbs (top level call).";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:4:"root";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:26:"Virtual root (null: none).";s:11:"phpdoc_name";s:4:"root";}}s:4:"name";s:21:"cns_forum_breadcrumbs";s:11:"description";s:28:"Get breadcrumbs for a forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"The breadcrumbs.";}}s:32:"cns_forum_allows_anonymous_posts";a:6:{s:8:"filename";s:22:"sources/cns_forums.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:10:"?AUTO_LINK";s:11:"description";s:43:"The ID of the forum (null: private topics).";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:32:"cns_forum_allows_anonymous_posts";s:11:"description";s:41:"Whether a forum supports anonymous posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether it does.";}}s:41:"cns_create_selection_list_forum_groupings";a:6:{s:8:"filename";s:23:"sources/cns_forums2.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:62:"Category to avoid putting in the list (null: don't avoid any).";s:11:"phpdoc_name";s:5:"avoid";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:57:"Category selected by default (null: no specific default).";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:41:"cns_create_selection_list_forum_groupings";s:11:"description";s:55:"Get a nice list for selection from the forum groupings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The list.";}}s:36:"cns_create_selection_list_topic_tree";a:6:{s:8:"filename";s:23:"sources/cns_forums2.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:10:"?AUTO_LINK";s:11:"description";s:50:"The currently selected topic (null: none selected)";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:36:"cns_create_selection_list_topic_tree";s:11:"description";s:67:"Get a nice, formatted XHTML list of topics, in forum tree structure";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The list of topics";}}s:18:"cns_get_topic_tree";a:6:{s:8:"filename";s:23:"sources/cns_forums2.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:8:"forum_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:68:"The forum being at the root of our recursion (null: true root forum)";s:11:"phpdoc_name";s:8:"forum_id";}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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:2;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:8:"?ID_TEXT";s:11:"description";s:187:"The forum name of the $forum_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:5:"title";}i:3;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}}s:4:"name";s:18:"cns_get_topic_tree";s:11:"description";s:130:"Get a list of maps containing all the topics, and path information, under the specified forum - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:164:"A list of maps for all forums. Each map entry containins the fields 'id' (forum ID) and 'breadcrumbs' (path to the forum, including the forums own title), and more.";}}s:32:"create_selection_list_forum_tree";a:6:{s:8:"filename";s:23:"sources/cns_forums2.php";s:10:"parameters";a:6:{i:0;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:72:"The member that the view privileges are done for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:10:"base_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:62:"The forum we are starting from (null: capture the whole tree).";s:11:"phpdoc_name";s:10:"base_forum";}i:2;a:7:{s:4:"name";s:14:"selected_forum";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:114:"The forum(s) to select by default (null: no preference). An array of AUTO_LINK's (for IDs) or strings (for names).";s:11:"phpdoc_name";s:14:"selected_forum";}i:3;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:120:"Whether to generate a compound list (a list of all the ancesters, for each point in the forum tree) as well as the tree.";s:11:"phpdoc_name";s:17:"use_compound_list";}i:4;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:5;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:32:"create_selection_list_forum_tree";s:11:"description";s:129:"Generate a Tempcode tree based selection list for choosing a forum. Also capable of getting comma-separated ancester forum lists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"Forum selection list.";}}s:18:"cns_get_forum_tree";a:6:{s:8:"filename";s:23:"sources/cns_forums2.php";s:10:"parameters";a:9:{i:0;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:72:"The member that the view privileges are done for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:10:"base_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:62:"The forum we are starting from (null: capture the whole tree).";s:11:"phpdoc_name";s:10:"base_forum";}i:2;a:7:{s:4:"name";s:11:"breadcrumbs";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:69:"The breadcrumbs at this point of the recursion (blank for the start).";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:3;a:7:{s:4:"name";s:4:"skip";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:"ID of a forum to skip display/recursion for (null: none).";s:11:"phpdoc_name";s:4:"skip";}i:4;a:7:{s:4:"name";s:13:"forum_details";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:67:"Details of the current forum in the recursion (null: find from DB).";s:11:"phpdoc_name";s:13:"forum_details";}i:5;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:120:"Whether to generate a compound list (a list of all the ancesters, for each point in the forum tree) as well as the tree.";s:11:"phpdoc_name";s:17:"use_compound_list";}i:6;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:7;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 generate tree statistics.";s:11:"phpdoc_name";s:8:"do_stats";}i:8;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:18:"cns_get_forum_tree";s:11:"description";s:109:"Generate a map of details for choosing a forum. Also capable of getting comma-separated ancester forum lists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:88:"A list of maps, OR (if $use_compound_list) a pair of the Tempcode and the compound list.";}}s:23:"cns_make_forum_grouping";a:6:{s:8:"filename";s:29:"sources/cns_forums_action.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:10:"SHORT_TEXT";s:11:"description";s:32:"The title of the forum grouping.";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:10:"SHORT_TEXT";s:11:"description";s:38:"The description of 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:146:"Whether the forum grouping will be shown expanded by default (as opposed to contracted, where contained forums will not be shown until expansion).";s:11:"phpdoc_name";s:19:"expanded_by_default";}}s:4:"name";s:23:"cns_make_forum_grouping";s:11:"description";s:21:"Add a forum grouping.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:40:"The ID of the forum grouping just added.";}}s:14:"cns_make_forum";a:6:{s:8:"filename";s:29:"sources/cns_forums_action.php";s:10:"parameters";a:14:{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:22:"The name of the forum.";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"The description for the forum.";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:80:"What forum grouping the forum will be filed with (null: this is the root forum).";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:3;a:5:{s:4:"name";s:14:"access_mapping";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:281:"Permission map (null: do it the standard way, outside of this function). This parameter is for import/compatibility only and works upon an emulation of 'access levels' (ala Composr 2.5/2.6), and it is recommended to use the normal crud_module functionality for permissions setting.";s:11:"phpdoc_name";s:14:"access_mapping";}i:4;a:5:{s:4:"name";s:12:"parent_forum";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:58:"The ID of the parent forum (null: this is the root forum).";s:11:"phpdoc_name";s:12:"parent_forum";}i:5;a:7:{s:4:"name";s:8:"position";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:134:"The position of this forum relative to other forums viewable on the same screen (if parent forum hasn't specified automatic ordering).";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:69:"Whether post counts will be incremented if members post in the 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:73:"Whether the ordering of subforums is done automatically, alphabetically).";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:66:"The question that is shown for newbies to the forum (blank: none).";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:10:"SHORT_TEXT";s:11:"description";s:115:"The answer to the question (blank: no specific answer.. if there's a 'question', it just requires a click-through).";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:99:"Either blank for no redirection, the ID of another forum we are mirroring, or a URL to redirect to.";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: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 anonymous posts are allowed";s:11:"phpdoc_name";s:22:"allows_anonymous_posts";}}s:4:"name";s:14:"cns_make_forum";s:11:"description";s:13:"Make a forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the newly created forum.";}}s:23:"cns_edit_forum_grouping";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:44:"The ID of the forum grouping we are editing.";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:32:"The title of the forum grouping.";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The description of the forum grouping.";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:19:"expanded_by_default";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:146:"Whether the forum grouping will be shown expanded by default (as opposed to contracted, where contained forums will not be shown until expansion).";s:11:"phpdoc_name";s:19:"expanded_by_default";}}s:4:"name";s:23:"cns_edit_forum_grouping";s:11:"description";s:22:"Edit a forum grouping.";s:5:"flags";a:0:{}}s:25:"cns_delete_forum_grouping";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:44:"The ID of the forum grouping we are editing.";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:1;a:7:{s:4:"name";s:24:"target_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:96:"The ID of the forum grouping that we will move all the contained forum to (null: the first one).";s:11:"phpdoc_name";s:24:"target_forum_grouping_id";}}s:4:"name";s:25:"cns_delete_forum_grouping";s:11:"description";s:24:"Delete a forum grouping.";s:5:"flags";a:0:{}}s:14:"cns_edit_forum";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:15:{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:35:"The ID of the forum we are editing.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the forum.";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"The description for the forum.";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:49:"What forum grouping the forum will be filed with.";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:4;a:5:{s:4:"name";s:10:"new_parent";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:58:"The ID of the parent forum (null: this is the root forum).";s:11:"phpdoc_name";s:10:"new_parent";}i:5;a:5:{s:4:"name";s:8:"position";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:134:"The position of this forum relative to other forums viewable on the same screen (if parent forum hasn't specified automatic ordering).";s:11:"phpdoc_name";s:8:"position";}i:6;a:5:{s:4:"name";s:20:"post_count_increment";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:69:"Whether post counts will be incremented if members post in the forum.";s:11:"phpdoc_name";s:20:"post_count_increment";}i:7;a:5:{s:4:"name";s:15:"order_sub_alpha";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:73:"Whether the ordering of subforums is done automatically, alphabetically).";s:11:"phpdoc_name";s:15:"order_sub_alpha";}i:8;a:5:{s:4:"name";s:14:"intro_question";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:66:"The question that is shown for newbies to the forum (blank: none).";s:11:"phpdoc_name";s:14:"intro_question";}i:9;a:5:{s:4:"name";s:12:"intro_answer";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:115:"The answer to the question (blank: no specific answer.. if there's a 'question', it just requires a click-through).";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:99:"Either blank for no redirection, the ID of another forum we are mirroring, or a URL to redirect to.";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: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 anonymous posts are allowed";s:11:"phpdoc_name";s:22:"allows_anonymous_posts";}i:14;a:7:{s:4:"name";s:22:"reset_intro_acceptance";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether to force forum rules to be re-agreed to, if they've just been changed.";s:11:"phpdoc_name";s:22:"reset_intro_acceptance";}}s:4:"name";s:14:"cns_edit_forum";s:11:"description";s:13:"Edit a forum.";s:5:"flags";a:0:{}}s:16:"cns_delete_forum";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:3:{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:36:"The ID of the forum we are deleting.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:7:{s:4:"name";s:15:"target_forum_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:68:"The ID of the forum that topics will be moved to (null: root forum).";s:11:"phpdoc_name";s:15:"target_forum_id";}i:2;a:7:{s:4:"name";s:13:"delete_topics";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:68:"Whether to delete topics instead of moving them to the target forum.";s:11:"phpdoc_name";s:13:"delete_topics";}}s:4:"name";s:16:"cns_delete_forum";s:11:"description";s:15:"Delete a forum.";s:5:"flags";a:0:{}}s:23:"cns_ping_forum_read_all";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:23:"cns_ping_forum_read_all";s:11:"description";s:73:"Mark all recent topics in a certain forum as read for the current member.";s:5:"flags";a:0:{}}s:25:"cns_ping_forum_unread_all";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:25:"cns_ping_forum_unread_all";s:11:"description";s:75:"Mark all recent topics in a certain forum as unread for the current member.";s:5:"flags";a:0:{}}s:32:"cns_ensure_forum_grouping_exists";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:29:"The ID of the forum grouping.";s:11:"phpdoc_name";s:17:"forum_grouping_id";}}s:4:"name";s:32:"cns_ensure_forum_grouping_exists";s:11:"description";s:55:"Bomb out if the specified forum grouping doesn't exist.";s:5:"flags";a:0:{}}s:23:"cns_ensure_forum_exists";a:6:{s:8:"filename";s:30:"sources/cns_forums_action2.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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:23:"cns_ensure_forum_exists";s:11:"description";s:46:"Bomb out if the specified forum doesn't exist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the forum.";}}s:31:"get_forum_sort_order_simplified";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"_sort";s:7:"default";s:10:"first_post";s:11:"default_raw";s:12:"'first_post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Sort order keyword.";s:11:"phpdoc_name";s:5:"_sort";}}s:4:"name";s:31:"get_forum_sort_order_simplified";s:11:"description";s:53:"Get the active forum sort order from a URL specifier.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:90:"A tuple: Sort order in SQL form, keyset pagination field pattern, keyset pagination field.";}}s:20:"get_forum_sort_order";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:5:"_sort";s:7:"default";s:10:"first_post";s:11:"default_raw";s:12:"'first_post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Sort order keyword.";s:11:"phpdoc_name";s:5:"_sort";}i:1;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:48:"Whether to not include pinning etc in the order.";s:11:"phpdoc_name";s:10:"simplified";}}s:4:"name";s:20:"get_forum_sort_order";s:11:"description";s:53:"Get the active forum sort order from a URL specifier.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:90:"A tuple: Sort order in SQL form, keyset pagination field pattern, keyset pagination field.";}}s:20:"cns_render_forumview";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:32:"Forum ID (null: private topics).";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"forum_info";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:37:"The forum row (null: private topics).";s:11:"phpdoc_name";s:10:"forum_info";}i:2;a:5:{s:4:"name";s:18:"current_filter_cat";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:40:"The filter category (blank if no filter)";s:11:"phpdoc_name";s:18:"current_filter_cat";}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:23:"Maximum results to show";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:25:"Offset for result showing";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:10:"true_start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:49:"True offset when disconsidering keyset pagination";s:11:"phpdoc_name";s:10:"true_start";}i:6;a:5:{s:4:"name";s:7:"sql_sup";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Extra SQL to append for where clause.";s:11:"phpdoc_name";s:7:"sql_sup";}i:7;a:5:{s:4:"name";s:16:"sql_sup_order_by";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"Extra SQL to append as order clause.";s:11:"phpdoc_name";s:16:"sql_sup_order_by";}i:8;a:5:{s:4:"name";s:21:"keyset_field_stripped";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:67:"Keyset field name so that we can extract values from DB result sets";s:11:"phpdoc_name";s:21:"keyset_field_stripped";}i:9;a:5:{s:4:"name";s:4:"root";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"Virtual root";s:11:"phpdoc_name";s:4:"root";}i:10;a:5:{s:4:"name";s:12:"of_member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:71:"The member to show private topics of (null: not showing private topics)";s:11:"phpdoc_name";s:12:"of_member_id";}i:11;a:5:{s:4:"name";s:11:"breadcrumbs";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The breadcrumbs";s:11:"phpdoc_name";s:11:"breadcrumbs";}}s:4:"name";s:20:"cns_render_forumview";s:11:"description";s:30:"Render the Conversr forumview.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:192:"Either Tempcode (an interface that must be shown) or a pair: The main Tempcode, the forum name (string). For a PT view, it is always a tuple, never raw Tempcode (as it can go inside a tabset).";}}s:19:"cns_get_topic_array";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"topic_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"The DB row of the topic.";s:11:"phpdoc_name";s:9:"topic_row";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member the details are being prepared for.";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:20:"hot_topic_definition";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The hot topic definition (taken from the config options).";s:11:"phpdoc_name";s:20:"hot_topic_definition";}i:3;a:5:{s:4:"name";s:8:"involved";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether the viewing member has a post in the topic.";s:11:"phpdoc_name";s:8:"involved";}}s:4:"name";s:19:"cns_get_topic_array";s:11:"description";s:157:"Get details of a topic (to show eventually as a row in a forum or results view). This is a helper function, and thus the interface is not very user friendly.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The details.";}}s:16:"cns_render_topic";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:4:{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:137:"The details (array containing: last_post_id, id, modifiers, emoticon, first_member_id, first_username, first_post, num_posts, num_views).";s:11:"phpdoc_name";s:5:"topic";}i:1;a:5:{s:4:"name";s:17:"has_topic_marking";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:123:"Whether the viewing member has the facility to mark off topics (send as false if there are no actions for them to perform).";s:11:"phpdoc_name";s:17:"has_topic_marking";}i:2;a:7:{s:4:"name";s:2:"pt";s:7:"default";s:13:"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 the topic is a Private Topic.";s:11:"phpdoc_name";s:2:"pt";}i:3;a:7:{s:4:"name";s:10:"show_forum";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:50:"The forum name (null: do not show the forum name).";s:11:"phpdoc_name";s:10:"show_forum";}}s:4:"name";s:16:"cns_render_topic";s:11:"description";s:106:"Render a topic row (i.e. a row in a forum or results view), from given details (from cns_get_topic_array).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The topic row.";}}s:18:"cns_get_forum_view";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:7:{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:13:"The forum ID.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:10:"forum_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The forum row.";s:11:"phpdoc_name";s:10:"forum_info";}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:117:"The start row for getting details of topics in the forum (i.e. 0 is newest, higher is starting further back in time).";s:11:"phpdoc_name";s:5:"start";}i:3;a:7:{s:4:"name";s:10:"true_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:49:"True offset when disconsidering keyset pagination";s:11:"phpdoc_name";s:10:"true_start";}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:62:"The maximum number of topics to get detail of (null: default).";s:11:"phpdoc_name";s:3:"max";}i:5;a:7:{s:4:"name";s:7:"sql_sup";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:20:"Extra SQL to append.";s:11:"phpdoc_name";s:7:"sql_sup";}i:6;a:7:{s:4:"name";s:16:"sql_sup_order_by";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:36:"Extra SQL to append as order clause.";s:11:"phpdoc_name";s:16:"sql_sup_order_by";}}s:4:"name";s:18:"cns_get_forum_view";s:11:"description";s:81:"Get a map of details relating to the view of a certain forum of a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The details.";}}s:22:"cns_get_private_topics";a:6:{s:8:"filename";s:28:"sources/cns_forumview_pt.php";s:10:"parameters";a:6:{i:0;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:131:"The start row for getting details of topics in the Private Topic forum (i.e. 0 is newest, higher is starting further back in time).";s:11:"phpdoc_name";s:5:"start";}i:1;a:7:{s:4:"name";s:10:"true_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:49:"True offset when disconsidering keyset pagination";s:11:"phpdoc_name";s:10:"true_start";}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:62:"The maximum number of topics to get detail of (null: default).";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:7:"sql_sup";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:20:"Extra SQL to append.";s:11:"phpdoc_name";s:7:"sql_sup";}i:4;a:7:{s:4:"name";s:16:"sql_sup_order_by";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:36:"Extra SQL to append as order clause.";s:11:"phpdoc_name";s:16:"sql_sup_order_by";}i:5;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:59:"The member to get Private Topics of (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_get_private_topics";s:11:"description";s:72:"Get a map of details relating to the Private Topics of a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The details.";}}s:17:"init__cns_general";a:5:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__cns_general";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:20:"cns_get_forums_stats";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"cns_get_forums_stats";s:11:"description";s:21:"Get some forum stats.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"A map of forum stats.";}}s:26:"cns_read_in_member_profile";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:2:{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:29:"The member to get details of.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:4:"lite";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether to get a 'lite' version (contains less detail, therefore less costly).";s:11:"phpdoc_name";s:4:"lite";}}s:4:"name";s:26:"cns_read_in_member_profile";s:11:"description";s:32:"Get details on a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"A map of details.";}}s:16:"get_member_title";a:6:{s:8:"filename";s:23:"sources/cns_general.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:10:"Member ID.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:16:"get_member_title";s:11:"description";s:19:"Get a member title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"Member title.";}}s:16:"get_group_colour";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"gid";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:10:"ID number.";s:11:"phpdoc_name";s:3:"gid";}}s:4:"name";s:16:"get_group_colour";s:11:"description";s:46:"Get a usergroup colour based on its ID number.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Colour.";}}s:18:"cns_find_birthdays";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:1:{i:0;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:56:"A timestamps that exists in the certain day (null: now).";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:18:"cns_find_birthdays";s:11:"description";s:40:"Find all the birthdays in a certain day.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"List of maps describing the members whose birthday it is on the certain day.";}}s:22:"cns_button_screen_wrap";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"buttons";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:50:"List of maps (each map contains: url, img, title).";s:11:"phpdoc_name";s:7:"buttons";}}s:4:"name";s:22:"cns_button_screen_wrap";s:11:"description";s:69:"Turn a list of maps describing buttons, into a Tempcode button panel.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The button panel.";}}s:21:"cns_set_context_forum";a:5:{s:8:"filename";s:23:"sources/cns_general.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:9:"Forum ID.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:21:"cns_set_context_forum";s:11:"description";s:22:"Set the forum context.";s:5:"flags";a:0:{}}s:22:"cns_make_post_template";a:6:{s:8:"filename";s:30:"sources/cns_general_action.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:10:"SHORT_TEXT";s:11:"description";s:27:"The title for the template.";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"The text of the template.";s:11:"phpdoc_name";s:4:"text";}i:2;a:5:{s:4:"name";s:16:"forum_multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:61:"The multi code specifying which forums this is applicable in.";s:11:"phpdoc_name";s:16:"forum_multi_code";}i:3;a:5:{s:4:"name";s:18:"use_default_forums";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether to use this as the default post in applicable forum.";s:11:"phpdoc_name";s:18:"use_default_forums";}}s:4:"name";s:22:"cns_make_post_template";s:11:"description";s:21:"Make a post template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The added ID";}}s:17:"cns_make_emoticon";a:5:{s:8:"filename";s:30:"sources/cns_general_action.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:53:"The textual code entered to make the emoticon appear.";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:14:"theme_img_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The image code used for the emoticon.";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:50:"The relevance level. 0 is core, shown immediately.";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:45:"Whether this may be used 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:17:"cns_make_emoticon";s:11:"description";s:17:"Make an emoticon.";s:5:"flags";a:0:{}}s:22:"cns_make_welcome_email";a:6:{s:8:"filename";s:30:"sources/cns_general_action.php";s:10:"parameters";a:7:{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:29:"A name for the Welcome E-mail";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:7:"subject";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:5:{s:4:"name";s:4:"text";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:5:{s:4:"name";s:9:"send_time";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:22:"cns_make_welcome_email";s:11:"description";s:22:"Make a Welcome E-mail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:22:"cns_edit_post_template";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:36:"The ID of the post template to edit.";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:27:"The title for the template.";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"The text of the template.";s:11:"phpdoc_name";s:4:"text";}i:3;a:5:{s:4:"name";s:16:"forum_multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:61:"The multi code specifying which forums this is applicable in.";s:11:"phpdoc_name";s:16:"forum_multi_code";}i:4;a:5:{s:4:"name";s:18:"use_default_forums";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether to use this as the default post in applicable forum.";s:11:"phpdoc_name";s:18:"use_default_forums";}}s:4:"name";s:22:"cns_edit_post_template";s:11:"description";s:21:"Edit a post template.";s:5:"flags";a:0:{}}s:24:"cns_delete_post_template";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:38:"The ID of the post template to delete.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:24:"cns_delete_post_template";s:11:"description";s:23:"Delete a post template.";s:5:"flags";a:0:{}}s:23:"import_custom_emoticons";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:15:"remove_old_core";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Make some of the old core emoticons non-core (level 1).";s:11:"phpdoc_name";s:15:"remove_old_core";}}s:4:"name";s:23:"import_custom_emoticons";s:11:"description";s:139:"Utility function to import custom emoticons.Not used by default, but useful when coding projects to do hot-changes to a separate live site.";s:5:"flags";a:0:{}}s:17:"cns_edit_emoticon";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"old_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:53:"The textual code entered to make the emoticon appear.";s:11:"phpdoc_name";s:8:"old_code";}i:1;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"The old textual code.";s:11:"phpdoc_name";s:4:"code";}i:2;a:5:{s:4:"name";s:14:"theme_img_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The image code used for the emoticon.";s:11:"phpdoc_name";s:14:"theme_img_code";}i:3;a:6:{s:4:"name";s:15:"relevance_level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"The relevance level.";s:11:"phpdoc_name";s:15:"relevance_level";s:5:"range";s:3:"0 4";}i:4;a:5:{s:4:"name";s:10:"use_topics";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:45:"Whether this may be used as a topic emoticon.";s:11:"phpdoc_name";s:10:"use_topics";}i:5;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:17:"cns_edit_emoticon";s:11:"description";s:17:"Edit an emoticon.";s:5:"flags";a:0:{}}s:19:"cns_delete_emoticon";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:10:"SHORT_TEXT";s:11:"description";s:33:"The ID of the emoticon to delete.";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:19:"cns_delete_emoticon";s:11:"description";s:19:"Delete an emoticon.";s:5:"flags";a:0:{}}s:22:"cns_edit_welcome_email";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:6:"The 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:10:"SHORT_TEXT";s:11:"description";s:29:"A name for the Welcome E-mail";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:7:"subject";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:3;a:5:{s:4:"name";s:4:"text";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:4;a:5:{s:4:"name";s:9:"send_time";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:5;a:5:{s:4:"name";s:10:"newsletter";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:6;a:5:{s:4:"name";s:9:"usergroup";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:7;a:6:{s:4:"name";s:14:"usergroup_type";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:17:"primary secondary";}}s:4:"name";s:22:"cns_edit_welcome_email";s:11:"description";s:22:"Edit a Welcome E-mail.";s:5:"flags";a:0:{}}s:24:"cns_delete_welcome_email";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:24:"cns_delete_welcome_email";s:11:"description";s:24:"Delete a Welcome E-mail.";s:5:"flags";a:0:{}}s:30:"cns_get_forum_multi_code_field";a:6:{s:8:"filename";s:31:"sources/cns_general_action2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:16:"forum_multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The multi code.";s:11:"phpdoc_name";s:16:"forum_multi_code";}}s:4:"name";s:30:"cns_get_forum_multi_code_field";s:11:"description";s:101:"Get a form field for editing a forum multi code, set up with a default of the given forum multi code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The form field.";}}s:14:"cns_mod_log_it";a:6:{s:8:"filename";s:31:"sources/cns_general_action2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"the_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The type of moderation.";s:11:"phpdoc_name";s:8:"the_type";}i:1;a:7:{s:4:"name";s:7:"param_a";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:"First detailing parameter.";s:11:"phpdoc_name";s:7:"param_a";}i:2;a:7:{s:4:"name";s:7:"param_b";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:"Second detailing parameter.";s:11:"phpdoc_name";s:7:"param_b";}i:3;a:7:{s:4:"name";s:6:"reason";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:45:"The reason for the moderation (may be blank).";s:11:"phpdoc_name";s:6:"reason";}i:4;a:7:{s:4:"name";s:2:"by";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:60:"The member performing the moderation (null: current member).";s:11:"phpdoc_name";s:2:"by";}i:5;a:7:{s:4:"name";s:13:"date_and_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:44:"The time of the moderation (null: just now).";s:11:"phpdoc_name";s:13:"date_and_time";}}s:4:"name";s:14:"cns_mod_log_it";s:11:"description";s:24:"Log a moderation action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The log ID.";}}s:16:"init__cns_groups";a:5:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__cns_groups";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"render_group_box";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:4:{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:13:"Usergroup row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_group_box";s:11:"description";s:23:"Render a usergroup box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The usergroup box";}}s:36:"cns_create_selection_list_usergroups";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:58:"Usergroup selected by default (null: no specific default).";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:17:"allow_guest_group";s:7:"default";s:12:"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:"Allow the guest usergroup to be in the list.";s:11:"phpdoc_name";s:17:"allow_guest_group";}}s:4:"name";s:36:"cns_create_selection_list_usergroups";s:11:"description";s:110:"Get a nice list for selection from the usergroups. Suitable for admin use only (does not check hidden status).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The list.";}}s:23:"get_first_default_group";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_first_default_group";s:11:"description";s:29:"Find the first default group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:24:"The first default group.";}}s:26:"cns_get_all_default_groups";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:15:"include_primary";s:7:"default";s:13:"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 to include the default primary (at the end of the list).";s:11:"phpdoc_name";s:15:"include_primary";}i:1;a:7:{s:4:"name";s:37:"include_all_configured_default_groups";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:248:"The functionality does not usually consider configured default groups [unless there's just one], because this is a layer of uncertainity (the user PICKS one of these). If you want to return all configured default groups, set this parameter to true.";s:11:"phpdoc_name";s:37:"include_all_configured_default_groups";}}s:4:"name";s:26:"cns_get_all_default_groups";s:11:"description";s:88:"Get a list of the default usergroups (the usergroups a member is put in when they join).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"The list of default IDs.";}}s:24:"cns_ensure_groups_cached";a:5:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The list of usergroups (array) or '*'.";s:11:"phpdoc_name";s:6:"groups";}}s:4:"name";s:24:"cns_ensure_groups_cached";s:11:"description";s:49:"Ensure a list of usergroups are cached in memory.";s:5:"flags";a:0:{}}s:18:"cns_get_group_link";a:6:{s:8:"filename";s:22:"sources/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:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"hide_hidden";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to hide the name if it is a hidden group.";s:11:"phpdoc_name";s:11:"hide_hidden";}}s:4:"name";s:18:"cns_get_group_link";s:11:"description";s:35:"Get a rendered link to a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The link.";}}s:18:"cns_get_group_name";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"group";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:5:"group";}i:1;a:7:{s:4:"name";s:11:"hide_hidden";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to hide the name if it is a hidden group.";s:11:"phpdoc_name";s:11:"hide_hidden";}}s:4:"name";s:18:"cns_get_group_name";s:11:"description";s:21:"Get a usergroup name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The usergroup name.";}}s:22:"cns_get_group_property";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"group";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:5:"group";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The identifier of the property.";s:11:"phpdoc_name";s:8:"property";}i:2;a:7:{s:4:"name";s:11:"hide_hidden";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to hide the name if it is a hidden group.";s:11:"phpdoc_name";s:11:"hide_hidden";}}s:4:"name";s:22:"cns_get_group_property";s:11:"description";s:36:"Get a certain property of a certain.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:19:"The property value.";}}s:34:"cns_get_member_best_group_property";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{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:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The identifier of the property.";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:34:"cns_get_member_best_group_property";s:11:"description";s:106:"Get the best value of all values of a property for a member (due to members being in multiple usergroups).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:19:"The property value.";}}s:27:"cns_get_best_group_property";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{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 list of usergroups.";s:11:"phpdoc_name";s:6:"groups";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The identifier of the property.";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:27:"cns_get_best_group_property";s:11:"description";s:72:"Get the best value of all values of a property for a list of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:80:"The best property value ('best' is dependant on the property we are looking at).";}}s:22:"cns_get_members_groups";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:4:{i:0;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:60:"The member to find the usergroups of (null: current member).";s:11:"phpdoc_name";s:9:"member_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";}i:3;a:7:{s:4:"name";s:16:"include_implicit";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether to include implicit groups";s:11:"phpdoc_name";s:16:"include_implicit";}}s:4:"name";s:22:"cns_get_members_groups";s:11:"description";s:93:"Get a list of the usergroups a member is in (keys say the usergroups, values are irrelevant).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:74:"Reverse list (e.g. array(1=>true,2=>true,3=>true) for someone in (1,2,3)).";}}s:17:"find_usergroup_id";a:6:{s:8:"filename";s:22:"sources/cns_groups.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:10:"SHORT_TEXT";s:11:"description";s:10:"The title.";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:17:"find_usergroup_id";s:11:"description";s:176:"Get the ID for a usergroup if we only know the title. Warning: Only use this with custom code, never core code! It assumes a single language and that usergroups aren't renamed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The ID (null: could not find).";}}s:31:"cns_get_group_members_raw_count";a:6:{s:8:"filename";s:23:"sources/cns_groups2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:7:{s:4:"name";s:17:"include_primaries";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to include those in the as a primary member.";s:11:"phpdoc_name";s:17:"include_primaries";}i:2;a:7:{s:4:"name";s:13:"non_validated";s:7:"default";s:13:"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 to include those applied to join the, but not validated in.";s:11:"phpdoc_name";s:13:"non_validated";}i:3;a:7:{s:4:"name";s:19:"include_secondaries";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to include those in the as a secondary member.";s:11:"phpdoc_name";s:19:"include_secondaries";}i:4;a:7:{s:4:"name";s:27:"include_unvalidated_members";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:112:"Whether to include those members who are not validated as site members at all yet (parameter currently ignored).";s:11:"phpdoc_name";s:27:"include_unvalidated_members";}}s:4:"name";s:31:"cns_get_group_members_raw_count";s:11:"description";s:77:"Get a count of members in a (or more full details if $non_validated is true).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:10:"The count.";}}s:25:"cns_get_group_members_raw";a:6:{s:8:"filename";s:23:"sources/cns_groups2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:7:{s:4:"name";s:17:"include_primaries";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to include those in the as a primary member.";s:11:"phpdoc_name";s:17:"include_primaries";}i:2;a:7:{s:4:"name";s:13:"non_validated";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:122:"Whether to include those applied to join the, but not validated in (also causes it to return maps that contain this info).";s:11:"phpdoc_name";s:13:"non_validated";}i:3;a:7:{s:4:"name";s:19:"include_secondaries";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to include those in the as a secondary member.";s:11:"phpdoc_name";s:19:"include_secondaries";}i:4;a:7:{s:4:"name";s:27:"include_unvalidated_members";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:112:"Whether to include those members who are not validated as site members at all yet (parameter currently ignored).";s:11:"phpdoc_name";s:27:"include_unvalidated_members";}i:5;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:191:"Return up to this many entries for primary members and this many entries for secondary members and all LDAP members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:6;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:25:"cns_get_group_members_raw";s:11:"description";s:76:"Get a list of members in a (or more full details if $non_validated is true).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:9:"The list.";}}s:14:"cns_make_group";a:6:{s:8:"filename";s:29:"sources/cns_groups_action.php";s:10:"parameters";a:28:{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:26:"The name of the usergroup.";s:11:"phpdoc_name";s:4:"name";}i:1;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:62:"Whether members are automatically put into the when they join.";s:11:"phpdoc_name";s:10:"is_default";}i:2;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:63:"Whether members of this usergroup are all super administrators.";s:11:"phpdoc_name";s:14:"is_super_admin";}i:3;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:59:"Whether members of this usergroup are all super moderators.";s:11:"phpdoc_name";s:18:"is_super_moderator";}i:4;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:80:"The title for primary members of this usergroup that don't have their own title.";s:11:"phpdoc_name";s:5:"title";}i:5;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 rank image for this.";s:11:"phpdoc_name";s:10:"rank_image";}i:6;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:101:"The that members of this usergroup get promoted to at point threshold (null: no promotion prospects).";s:11:"phpdoc_name";s:16:"promotion_target";}i:7;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:65:"The point threshold for promotion (null: no promotion prospects).";s:11:"phpdoc_name";s:19:"promotion_threshold";}i:8;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:7:"?MEMBER";s:11:"description";s:42:"The leader of this usergroup (null: none).";s:11:"phpdoc_name";s:12:"group_leader";}i:9;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:160:"The number of seconds that members of this usergroup must endure between submits (group 'best of' applies). 0 means N/A. (null: average for existing usergroups)";s:11:"phpdoc_name";s:25:"flood_control_submit_secs";}i:10;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:161:"The number of seconds that members of this usergroup must endure between accesses (group 'best of' applies). 0 means N/A. (null: average for existing usergroups)";s:11:"phpdoc_name";s:25:"flood_control_access_secs";}i:11;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:140:"The number of megabytes that members of this usergroup may attach per day (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:19:"max_daily_upload_mb";}i:12;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:147:"The number of attachments that members of this usergroup may attach to something (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:24:"max_attachments_per_post";}i:13;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:131:"The maximum avatar width that members of this usergroup may have (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:16:"max_avatar_width";}i:14;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:132:"The maximum avatar height that members of this usergroup may have (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:17:"max_avatar_height";}i:15;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:130:"The maximum post length that members of this usergroup may make (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:23:"max_post_length_comcode";}i:16;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:135:"The maximum signature length that members of this usergroup may make (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:22:"max_sig_length_comcode";}i:17;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:134:"The number of gift points that members of this usergroup start with (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:16:"gift_points_base";}i:18;a:7:{s:4:"name";s:19:"gift_points_per_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:135:"The number of gift points that members of this usergroup get per day (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:19:"gift_points_per_day";}i:19;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:123:"Whether e-mail confirmation is needed for new IP addresses seen for any member of this usergroup (group 'best of' applies).";s:11:"phpdoc_name";s:18:"enquire_on_new_ips";}i:20;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:119:"Whether the usergroup is presented for joining at joining (implies anyone may be in the, but only choosable at joining)";s:11:"phpdoc_name";s:23:"is_presented_at_install";}i:21;a:7:{s:4:"name";s:6:"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:48:"Whether the name and membership of the is hidden";s:11:"phpdoc_name";s:6:"hidden";}i:22;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:149:"The display order this will be given, relative to other usergroups. Lower numbered usergroups display before higher numbered usergroups (null: next).";s:11:"phpdoc_name";s:5:"order";}i:23;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:24;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:25;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";}i:26;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to force the title as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}i:27;a:7:{s:4:"name";s:22:"comes_with_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:41:"Whether permissions should be auto-copied";s:11:"phpdoc_name";s:22:"comes_with_permissions";}}s:4:"name";s:14:"cns_make_group";s:11:"description";s:16:"Add a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:18:"The ID of the new.";}}s:21:"cns_may_control_group";a:6:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:14:"The usergroup.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:21:"cns_may_control_group";s:11:"description";s:62:"Find whether a certain member may control a certain usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:14:"cns_edit_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:28:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:32:"The ID of the usergroup to edit.";s:11:"phpdoc_name";s:8:"group_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:48:"The name of the usergroup. (null: do not change)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:10:"is_default";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:84:"Whether members are automatically put into the when they join. (null: do not change)";s:11:"phpdoc_name";s:10:"is_default";}i:3;a:5:{s:4:"name";s:14:"is_super_admin";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:85:"Whether members of this usergroup are all super administrators. (null: do not change)";s:11:"phpdoc_name";s:14:"is_super_admin";}i:4;a:5:{s:4:"name";s:18:"is_super_moderator";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether members of this usergroup are all super moderators. (null: do not change)";s:11:"phpdoc_name";s:18:"is_super_moderator";}i:5;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:102:"The title for primary members of this usergroup that don't have their own title. (null: do not change)";s:11:"phpdoc_name";s:5:"title";}i:6;a:5:{s:4:"name";s:10:"rank_image";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:46:"The rank image for this. (null: do not change)";s:11:"phpdoc_name";s:10:"rank_image";}i:7;a:5:{s:4:"name";s:16:"promotion_target";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:101:"The that members of this usergroup get promoted to at point threshold (null: no promotion prospects).";s:11:"phpdoc_name";s:16:"promotion_target";}i:8;a:5:{s:4:"name";s:19:"promotion_threshold";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:65:"The point threshold for promotion (null: no promotion prospects).";s:11:"phpdoc_name";s:19:"promotion_threshold";}i:9;a:5:{s:4:"name";s:12:"group_leader";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:42:"The leader of this usergroup (null: none).";s:11:"phpdoc_name";s:12:"group_leader";}i:10;a:5:{s:4:"name";s:25:"flood_control_submit_secs";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:129:"The number of seconds that members of this usergroup must endure between submits (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:25:"flood_control_submit_secs";}i:11;a:5:{s:4:"name";s:25:"flood_control_access_secs";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:130:"The number of seconds that members of this usergroup must endure between accesses (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:25:"flood_control_access_secs";}i:12;a:5:{s:4:"name";s:19:"max_daily_upload_mb";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:122:"The number of megabytes that members of this usergroup may attach per day (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:19:"max_daily_upload_mb";}i:13;a:5:{s:4:"name";s:24:"max_attachments_per_post";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:129:"The number of attachments that members of this usergroup may attach to something (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:24:"max_attachments_per_post";}i:14;a:5:{s:4:"name";s:16:"max_avatar_width";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:113:"The maximum avatar width that members of this usergroup may have (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:16:"max_avatar_width";}i:15;a:5:{s:4:"name";s:17:"max_avatar_height";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:114:"The maximum avatar height that members of this usergroup may have (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:17:"max_avatar_height";}i:16;a:5:{s:4:"name";s:23:"max_post_length_comcode";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:112:"The maximum post length that members of this usergroup may make (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:23:"max_post_length_comcode";}i:17;a:5:{s:4:"name";s:22:"max_sig_length_comcode";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:117:"The maximum signature length that members of this usergroup may make (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:22:"max_sig_length_comcode";}i:18;a:5:{s:4:"name";s:16:"gift_points_base";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:116:"The number of gift points that members of this usergroup start with (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:16:"gift_points_base";}i:19;a:5:{s:4:"name";s:19:"gift_points_per_day";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:117:"The number of gift points that members of this usergroup get per day (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:19:"gift_points_per_day";}i:20;a:5:{s:4:"name";s:18:"enquire_on_new_ips";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:145:"Whether e-mail confirmation is needed for new IP addresses seen for any member of this usergroup (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:18:"enquire_on_new_ips";}i:21;a:5:{s:4:"name";s:23:"is_presented_at_install";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:131:"Whether the is presented for joining at joining (implies anyone may be in the, but only choosable at joining) (null: do not change)";s:11:"phpdoc_name";s:23:"is_presented_at_install";}i:22;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:70:"Whether the name and membership of the is hidden (null: do not change)";s:11:"phpdoc_name";s:6:"hidden";}i:23;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:158:"The display order this will be given, relative to other usergroups. Lower numbered usergroups display before higher numbered usergroups. (null: do not change)";s:11:"phpdoc_name";s:5:"order";}i:24;a:5:{s:4:"name";s:19:"rank_image_pri_only";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:87:"Whether the rank image will not be shown for secondary membership (null: do not change)";s:11:"phpdoc_name";s:19:"rank_image_pri_only";}i:25;a:5:{s:4:"name";s:15:"open_membership";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:102:"Whether members may join this usergroup without requiring any special permission (null: do not change)";s:11:"phpdoc_name";s:15:"open_membership";}i:26;a:5:{s:4:"name";s:15:"is_private_club";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:191:"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. (null: do not change)";s:11:"phpdoc_name";s:15:"is_private_club";}i:27;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to force the title as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:14:"cns_edit_group";s:11:"description";s:17:"Edit a usergroup.";s:5:"flags";a:0:{}}s:16:"cns_delete_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the usergroup to delete.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:7:{s:4:"name";s:12:"target_group";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:62:"The usergroup to move primary members to (null: main members).";s:11:"phpdoc_name";s:12:"target_group";}}s:4:"name";s:16:"cns_delete_group";s:11:"description";s:19:"Delete a usergroup.";s:5:"flags";a:0:{}}s:25:"cns_member_ask_join_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:26:"The usergroup to apply to.";s:11:"phpdoc_name";s:8:"group_id";}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:43:"The member applying (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:25:"cns_member_ask_join_group";s:11:"description";s:68:"Mark a member as applying to be in a certain, and inform the leader.";s:5:"flags";a:0:{}}s:22:"cns_member_leave_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:29:"The usergroup to remove from.";s:11:"phpdoc_name";s:8:"group_id";}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:42:"The member leaving (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_member_leave_group";s:11:"description";s:41:"Remove a member from a certain usergroup.";s:5:"flags";a:0:{}}s:23:"cns_add_member_to_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:3:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:14:"The usergroup.";s:11:"phpdoc_name";s:2:"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:51:"Whether the member is validated into the usergroup.";s:11:"phpdoc_name";s:9:"validated";}}s:4:"name";s:23:"cns_add_member_to_group";s:11:"description";s:36:"Add a member to a certain usergroup.";s:5:"flags";a:0:{}}s:30:"cns_member_validate_into_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:14:"The usergroup.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:5:{s:4:"name";s:21:"prospective_member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"The prospective member.";s:11:"phpdoc_name";s:21:"prospective_member_id";}i:2;a:7:{s:4:"name";s:7:"decline";s:7:"default";s:13:"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 the member is being declined membership.";s:11:"phpdoc_name";s:7:"decline";}i:3;a:7:{s:4:"name";s:6:"reason";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:31:"The reason given for declining.";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:30:"cns_member_validate_into_group";s:11:"description";s:96:"Set whether a member that has applied to be in a, may be in it, and inform them of the decision.";s:5:"flags";a:0:{}}s:30:"cns_group_absorb_privileges_of";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:44:"The that is having its permissions replaced.";s:11:"phpdoc_name";s:2:"to";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:46:"The that the permissions are being drawn from.";s:11:"phpdoc_name";s:4:"from";}}s:4:"name";s:30:"cns_group_absorb_privileges_of";s:11:"description";s:45:"Copy permissions relating to one, to another.";s:5:"flags";a:0:{}}s:31:"_cns_group_absorb_privileges_of";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:44:"The that is having its permissions replaced.";s:11:"phpdoc_name";s:2:"to";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:46:"The that the permissions are being drawn from.";s:11:"phpdoc_name";s:4:"from";}i:2;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"The table holding the permissions.";s:11:"phpdoc_name";s:5:"table";}i:3;a:7:{s:4:"name";s:2:"id";s:7:"default";s:8:"group_id";s:11:"default_raw";s:10:"'group_id'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The name of the field in the table that holds the ID.";s:11:"phpdoc_name";s:2:"id";}i:4;a:7:{s:4:"name";s:3:"cns";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:68:"Whether the operation is being carried out over the Conversr driver.";s:11:"phpdoc_name";s:3:"cns";}}s:4:"name";s:31:"_cns_group_absorb_privileges_of";s:11:"description";s:66:"Helper function, for copy permissions relating to one, to another.";s:5:"flags";a:0:{}}s:17:"init__cns_install";a:5:{s:8:"filename";s:23:"sources/cns_install.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__cns_install";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:13:"uninstall_cns";a:5:{s:8:"filename";s:23:"sources/cns_install.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"uninstall_cns";s:11:"description";s:18:"Uninstall Conversr";s:5:"flags";a:0:{}}s:11:"install_cns";a:5:{s:8:"filename";s:23:"sources/cns_install.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:6:"?float";s:11:"description";s:50:"The version to upgrade from (null: fresh install).";s:11:"phpdoc_name";s:12:"upgrade_from";}}s:4:"name";s:11:"install_cns";s:11:"description";s:25:"Install/upgrade Conversr.";s:5:"flags";a:0:{}}s:21:"check_joining_allowed";a:5:{s:8:"filename";s:20:"sources/cns_join.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"check_joining_allowed";s:11:"description";s:60:"Give error if Conversr-joining is not possible on this site.";s:5:"flags";a:0:{}}s:13:"cns_join_form";a:6:{s:8:"filename";s:20:"sources/cns_join.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:8:"Tempcode";s:11:"description";s:16:"URL to direct to";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:18:"captcha_if_enabled";s:7:"default";s:12:"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 to handle CAPTCHA (if enabled at all)";s:11:"phpdoc_name";s:18:"captcha_if_enabled";}i:2;a:7:{s:4:"name";s:24:"intro_message_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to ask for intro messages (if enabled at all)";s:11:"phpdoc_name";s:24:"intro_message_if_enabled";}i:3;a:7:{s:4:"name";s:18:"invites_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to check for invites (if enabled at all)";s:11:"phpdoc_name";s:18:"invites_if_enabled";}i:4;a:7:{s:4:"name";s:32:"one_per_email_address_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to check email-address restrictions (if enabled at all)";s:11:"phpdoc_name";s:32:"one_per_email_address_if_enabled";}}s:4:"name";s:13:"cns_join_form";s:11:"description";s:18:"Get the join form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:44:"A tuple: Necessary JavaScript code, the form";}}s:15:"cns_join_actual";a:6:{s:8:"filename";s:20:"sources/cns_join.php";s:10:"parameters";a:12:{i:0;a:7:{s:4:"name";s:18:"captcha_if_enabled";s:7:"default";s:12:"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 to handle CAPTCHA (if enabled at all)";s:11:"phpdoc_name";s:18:"captcha_if_enabled";}i:1;a:7:{s:4:"name";s:24:"intro_message_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to ask for intro messages (if enabled at all)";s:11:"phpdoc_name";s:24:"intro_message_if_enabled";}i:2;a:7:{s:4:"name";s:18:"invites_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to check for invites (if enabled at all)";s:11:"phpdoc_name";s:18:"invites_if_enabled";}i:3;a:7:{s:4:"name";s:32:"one_per_email_address_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to check email-address restrictions (if enabled at all)";s:11:"phpdoc_name";s:32:"one_per_email_address_if_enabled";}i:4;a:7:{s:4:"name";s:27:"email_validation_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to require email address validation (if enabled at all)";s:11:"phpdoc_name";s:27:"email_validation_if_enabled";}i:5;a:7:{s:4:"name";s:27:"staff_validation_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to force staff validation (if enabled at all)";s:11:"phpdoc_name";s:27:"staff_validation_if_enabled";}i:6;a:7:{s:4:"name";s:16:"coppa_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether to do COPPA checks (if enabled at all)";s:11:"phpdoc_name";s:16:"coppa_if_enabled";}i:7;a:7:{s:4:"name";s:13:"instant_login";s:7:"default";s:12:"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 instantly log the user in";s:11:"phpdoc_name";s:13:"instant_login";}i:8;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:8:"?ID_TEXT";s:11:"description";s:38:"Username (null: read from environment)";s:11:"phpdoc_name";s:8:"username";}i:9;a:7:{s:4:"name";s:13:"email_address";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?EMAIL";s:11:"description";s:44:"E-mail address (null: read from environment)";s:11:"phpdoc_name";s:13:"email_address";}i:10;a:7:{s:4:"name";s:8:"password";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:"Password (null: read from environment)";s:11:"phpdoc_name";s:8:"password";}i:11;a:7:{s:4:"name";s:20:"actual_custom_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:51:"Custom fields to save (null: read from environment)";s:11:"phpdoc_name";s:20:"actual_custom_fields";}}s:4:"name";s:15:"cns_join_actual";s:11:"description";s:24:"Actualise the join form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:50:"A tuple: Messages to show, member ID of new member";}}s:14:"init__cns_ldap";a:5:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__cns_ldap";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"cms_ldap_escape";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:10:"The value.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:6:"for_dn";s:7:"default";s:13:"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 this is for use in a DN string.";s:11:"phpdoc_name";s:6:"for_dn";}}s:4:"name";s:15:"cms_ldap_escape";s:11:"description";s:32:"Escape, ready for an LDAP query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped value.";}}s:13:"ldap_unescape";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{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:18:"The escaped value.";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:13:"ldap_unescape";s:11:"description";s:216:"Unescape data from LDAP. Technically this is not unescaping, it's just a character set conversion, but function is named to provide symmetry with cms_ldap_escape which does both escaping and character set conversion.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The value.";}}s:16:"cns_ldap_connect";a:5:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"cns_ldap_connect";s:11:"description";s:36:"Set up the Conversr LDAP connection.";s:5:"flags";a:0:{}}s:23:"member_search_qualifier";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"member_search_qualifier";s:11:"description";s:49:"Where in the LDAP hierarchy to search for groups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:15:"member_property";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"member_property";s:11:"description";s:37:"The property in LDAP used for logins.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:16:"get_member_class";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_member_class";s:11:"description";s:37:"The LDAP class indicating an account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:22:"group_search_qualifier";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"group_search_qualifier";s:11:"description";s:50:"Where in the LDAP hierarchy to search for members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:14:"group_property";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"group_property";s:11:"description";s:45:"The group naming property LDAP will be using.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:15:"get_group_class";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_group_class";s:11:"description";s:34:"The LDAP class indicating a group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:22:"get_mapped_users_group";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_mapped_users_group";s:11:"description";s:54:"The LDAP group that maps to the default Composr group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The group.";}}s:22:"get_mapped_admin_group";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_mapped_admin_group";s:11:"description";s:92:"The LDAP group that maps to the first administrative group in Composr (db_get_first_id()+1).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The group.";}}s:28:"cns_is_ldap_member_potential";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:28:"cns_is_ldap_member_potential";s:11:"description";s:137:"Find whether a member of a certain username WOULD be bound to LDAP authentication (an exceptional situation, only for sites that use it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:13:"cns_ldap_bind";a:5:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"cns_ldap_bind";s:11:"description";s:91:"Performs the Conversr LDAP connection bind, used to do general querying (not a user login).";s:5:"flags";a:0:{}}s:14:"cns_is_on_ldap";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:14:"cns_is_on_ldap";s:11:"description";s:48:"Find whether a member exists on the LDAP server.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:17:"cns_get_ldap_hash";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:17:"cns_get_ldap_hash";s:11:"description";s:52:"Find the LDAP servers password for a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:34:"The password (null: no such user).";}}s:13:"cns_ldap_hash";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:82:"The username (we use this to extract the hash algorithm being used by the member).";s:11:"phpdoc_name";s:2:"cn";}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:13:"The password.";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:13:"cns_ldap_hash";s:11:"description";s:53:"Convert a plain-text password into a hashed password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The hashed password.";}}s:21:"ldap_get_login_string";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:21:"ldap_get_login_string";s:11:"description";s:46:"Get an LDAP login string to do a bind against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The login string.";}}s:24:"cns_ldap_authorise_login";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}i:1;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:34:"The password (null: no such user).";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:24:"cns_ldap_authorise_login";s:11:"description";s:24:"Authorise an LDAP login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:128:"Part of the member row to put back in and authorise normally (hackerish, but it works kind of like a filter / stage in a chain).";}}s:26:"cns_member_ldapcn_to_cnsid";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:26:"cns_member_ldapcn_to_cnsid";s:11:"description";s:48:"Find the Composr member-ID for an LDAP username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:35:"The Composr member-ID (null: none).";}}s:26:"cns_member_cnsid_to_ldapcn";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:22:"The Composr member-ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:26:"cns_member_cnsid_to_ldapcn";s:11:"description";s:47:"Find the LDAP username for a Composr member-ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:26:"The username (null: none).";}}s:23:"cns_get_all_ldap_groups";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"cns_get_all_ldap_groups";s:11:"description";s:44:"Get a list of usergroups on the LDAP server.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"The list of user-groups (string).";}}s:25:"cns_group_ldapcn_to_cnsid";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The usergroup.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:25:"cns_group_ldapcn_to_cnsid";s:11:"description";s:47:"Find the Composr-ID for a named LDAP usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?GROUP";s:11:"description";s:28:"The Composr-ID (null: none).";}}s:25:"cns_group_cnsid_to_ldapcn";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:5:"GROUP";s:11:"description";s:16:"The Conversr ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:25:"cns_group_cnsid_to_ldapcn";s:11:"description";s:96:"Find the named LDAP usergroup for an Conversr ID. Note that the returned MAY NOT ACTUALLY EXIST!";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The named LDAP usergroup (null: none).";}}s:20:"cns_ldap_guess_email";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The CN of the member.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:20:"cns_ldap_guess_email";s:11:"description";s:35:"Get the e-mail of a member in LDAP.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:46:"Guessed e-mail address (blank: couldn't find).";}}s:30:"cns_get_group_members_raw_ldap";a:5:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"members";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:30:"The list is written into this.";s:11:"phpdoc_name";s:7:"members";}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:24:"The ID of the usergroup.";s:11:"phpdoc_name";s:8:"group_id";}i:2;a:5:{s:4:"name";s:17:"include_primaries";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to include those in the usergroup as a primary member.";s:11:"phpdoc_name";s:17:"include_primaries";}i:3;a:5:{s:4:"name";s:13:"non_validated";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to include those applied to join the usergroup, but not validated in.";s:11:"phpdoc_name";s:13:"non_validated";}i:4;a:5:{s:4:"name";s:19:"include_secondaries";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether to include those in the usergroup as a secondary member.";s:11:"phpdoc_name";s:19:"include_secondaries";}}s:4:"name";s:30:"cns_get_group_members_raw_ldap";s:11:"description";s:126:"(LDAP helper for cns_get_group_members_raw) Get a list of members in a group (or more full details if $non_validated is true).";s:5:"flags";a:0:{}}s:27:"cns_get_members_groups_ldap";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:7:"?MEMBER";s:11:"description";s:60:"The member to find the usergroups of (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:27:"cns_get_members_groups_ldap";s:11:"description";s:134:"(LDAP helper for cns_get_members_groups) Get a list of the usergroups a member is in (keys say the usergroups, values are irrelevant).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:74:"Reverse list (e.g. array(1=>true,2=>true,3=>true) for someone in (1,2,3)).";}}s:33:"cns_ldap_get_member_primary_group";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:33:"cns_ldap_get_member_primary_group";s:11:"description";s:46:"Get the primary usergroup of a member in LDAP.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:4:"The.";}}s:26:"cns_group_ldapgid_to_cnsid";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{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:12:"The LDAP ID.";s:11:"phpdoc_name";s:3:"gid";}}s:4:"name";s:26:"cns_group_ldapgid_to_cnsid";s:11:"description";s:57:"Find the Composr-ID for an LDAP usergroup-ID. POSIX Only.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?GROUP";s:11:"description";s:38:"The Composr-ID (null: could not find).";}}s:27:"cns_group_ldapcn_to_ldapgid";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The named LDAP usergroup.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:27:"cns_group_ldapcn_to_ldapgid";s:11:"description";s:56:"Find the LDAP ID for a named LDAP usergroup. POSIX Only.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:35:"The LDAP usergroup ID (null: none).";}}s:23:"cns_long_cn_to_short_cn";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"long";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The long one.";s:11:"phpdoc_name";s:4:"long";}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:23:"The type (e.g. CN, DN).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:23:"cns_long_cn_to_short_cn";s:11:"description";s:58:"Converts an active directory style long-CN to a short one.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"The short one.";}}s:26:"lost_password_emailer_step";a:6:{s:8:"filename";s:29:"sources/cns_lost_password.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:52:"Username to reset for (may be blank if other is not)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:13:"email_address";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"E-mail address to set for (may be blank if other is not)";s:11:"phpdoc_name";s:13:"email_address";}}s:4:"name";s:26:"lost_password_emailer_step";s:11:"description";s:31:"Send out a lost password e-mail";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:90:"A tuple: e-mail address, obfuscated e-mail address that is safe(ish) to display, member ID";}}s:17:"init__cns_members";a:5:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__cns_members";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"cns_get_filter_cats";a:6:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:15:"only_exists_now";s:7:"default";s:13:"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 only show ones that already have things in (i.e. not default ones)";s:11:"phpdoc_name";s:15:"only_exists_now";}}s:4:"name";s:19:"cns_get_filter_cats";s:11:"description";s:76:"Find all the Private Topic filter categories employed by the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:25:"List of filter categories";}}s:38:"cns_authusername_is_bound_via_httpauth";a:6:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"authusername";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:12:"authusername";}}s:4:"name";s:38:"cns_authusername_is_bound_via_httpauth";s:11:"description";s:131:"Find whether a member of a certain username is bound to HTTP authentication (an exceptional situation, only for sites that use it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:42:"The member ID, if it is (null: not bound).";}}s:18:"cns_is_ldap_member";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:18:"cns_is_ldap_member";s:11:"description";s:99:"Find whether a member is bound to HTTP LDAP (an exceptional situation, only for sites that use it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:22:"cns_is_httpauth_member";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_is_httpauth_member";s:11:"description";s:109:"Find whether a member is bound to HTTP authentication (an exceptional situation, only for sites that use it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:31:"cns_get_all_custom_fields_match";a:6:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:9:{i:0;a:7:{s:4:"name";s:6:"groups";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:127:"That are applicable only to one of the usergroups in this list (empty: CPFs with no restriction) (null: disregard restriction).";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:11:"public_view";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:46:"That are publicly viewable (null: don't care).";s:11:"phpdoc_name";s:11:"public_view";}i:2;a:7:{s:4:"name";s:10:"owner_view";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:43:"That are owner viewable (null: don't care).";s:11:"phpdoc_name";s:10:"owner_view";}i:3;a:7:{s:4:"name";s:9:"owner_set";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:43:"That are owner settable (null: don't care).";s:11:"phpdoc_name";s:9:"owner_set";}i:4;a:7:{s:4:"name";s:8:"required";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:37:"That are required (null: don't care).";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:13:"show_in_posts";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:49:"That are to be shown in posts (null: don't care).";s:11:"phpdoc_name";s:13:"show_in_posts";}i:6;a:7:{s:4:"name";s:21:"show_in_post_previews";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:57:"That are to be shown in post previews (null: don't care).";s:11:"phpdoc_name";s:21:"show_in_post_previews";}i:7;a:7:{s:4:"name";s:13:"special_start";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:17:"That start 'cms_'";s:11:"phpdoc_name";s:13:"special_start";}i:8;a:7:{s:4:"name";s:17:"show_on_join_form";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:51:"That are to go on the join form (null: don't care).";s:11:"phpdoc_name";s:17:"show_on_join_form";}}s:4:"name";s:31:"cns_get_all_custom_fields_match";s:11:"description";s:64:"Gets all the system custom fields that match certain parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"A list of rows of such fields.";}}s:38:"cns_get_all_custom_fields_match_member";a:6:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:10:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:11:"public_view";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:46:"That are publicly viewable (null: don't care).";s:11:"phpdoc_name";s:11:"public_view";}i:2;a:7:{s:4:"name";s:10:"owner_view";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:43:"That are owner viewable (null: don't care).";s:11:"phpdoc_name";s:10:"owner_view";}i:3;a:7:{s:4:"name";s:9:"owner_set";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:43:"That are owner settable (null: don't care).";s:11:"phpdoc_name";s:9:"owner_set";}i:4;a:7:{s:4:"name";s:9:"encrypted";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:38:"That are encrypted (null: don't care).";s:11:"phpdoc_name";s:9:"encrypted";}i:5;a:7:{s:4:"name";s:8:"required";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:37:"That are required (null: don't care).";s:11:"phpdoc_name";s:8:"required";}i:6;a:7:{s:4:"name";s:13:"show_in_posts";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:49:"That are to be shown in posts (null: don't care).";s:11:"phpdoc_name";s:13:"show_in_posts";}i:7;a:7:{s:4:"name";s:21:"show_in_post_previews";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:57:"That are to be shown in post previews (null: don't care).";s:11:"phpdoc_name";s:21:"show_in_post_previews";}i:8;a:7:{s:4:"name";s:13:"special_start";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:17:"That start 'cms_'";s:11:"phpdoc_name";s:13:"special_start";}i:9;a:7:{s:4:"name";s:17:"show_on_join_form";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:51:"That are to go on the join form (null: don't care).";s:11:"phpdoc_name";s:17:"show_on_join_form";}}s:4:"name";s:38:"cns_get_all_custom_fields_match_member";s:11:"description";s:64:"Gets all a member's custom fields that match certain parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:205:"A mapping of field title to a map of details: 'RAW' as the raw field value, 'RENDERED' as the rendered field value, 'FIELD_ID' to the field ID, 'EDITABILITY' defining if fractional editing can work on this";}}s:17:"find_cpf_field_id";a:6:{s:8:"filename";s:23:"sources/cns_members.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:10:"SHORT_TEXT";s:11:"description";s:10:"The title.";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:17:"find_cpf_field_id";s:11:"description";s:166:"Get the ID for a CPF if we only know the title. Warning: Only use this with custom code, never core code! It assumes a single language and that fields aren't renamed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The ID (null: could not find).";}}s:21:"find_cms_cpf_field_id";a:6:{s:8:"filename";s:23:"sources/cns_members.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:10:"SHORT_TEXT";s:11:"description";s:10:"The title.";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:21:"find_cms_cpf_field_id";s:11:"description";s:166:"Get the ID for a CPF if we only know the title. Warning: Only use this with custom code, never core code! It assumes a single language and that fields aren't renamed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The ID (null: could not find).";}}s:29:"cns_get_custom_field_mappings";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:29:"cns_get_custom_field_mappings";s:11:"description";s:130:"Returns a list of all field values for user. Doesn't take translation into account. Doesn't take anything permissive into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"The mapping, field_ to value.";}}s:28:"cns_get_custom_fields_member";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:28:"cns_get_custom_fields_member";s:11:"description";s:141:"Returns a mapping between field number and field value. Doesn't take translation into account. Doesn't take anything permissive into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The mapping.";}}s:28:"cns_get_member_primary_group";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:28:"cns_get_member_primary_group";s:11:"description";s:58:"Get the primary of a member (supports consulting of LDAP).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:12:"The primary.";}}s:19:"_members_filtercode";a:6:{s:8:"filename";s:24:"sources/cns_members2.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:7:"context";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Context (unused)";s:11:"phpdoc_name";s:7:"context";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:9:"field_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:9:"field_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:19:"_members_filtercode";s:11:"description";s:74:"Make sure we are doing necessary join to be able to access the given field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:17:"render_member_box";a:6:{s:8:"filename";s:24:"sources/cns_members2.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:14:"poster_details";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:157:"Either a member ID or an array containing: ip_address, poster_num_warnings, poster, poster_posts, poster_points, poster_join_date_string, primary_group_name.";s:11:"phpdoc_name";s:14:"poster_details";}i:1;a:7:{s:4:"name";s:7:"preview";s:7:"default";s:13:"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 only to show 'preview' details";s:11:"phpdoc_name";s:7:"preview";}i:2;a:7:{s:4:"name";s:5:"hooks";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:"An array of hooks. (null: lookup)";s:11:"phpdoc_name";s:5:"hooks";}i:3;a:7:{s:4:"name";s:12:"hook_objects";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:106:"An array of hook objects that allow us to collect additional mouse-over member information. (null: lookup)";s:11:"phpdoc_name";s:12:"hook_objects";}i:4;a:7:{s:4:"name";s:11:"show_avatar";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show the avatar";s:11:"phpdoc_name";s:11:"show_avatar";}i:5;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:6:"?array";s:11:"description";s:40:"Map of extra fields to show (null: none)";s:11:"phpdoc_name";s:12:"extra_fields";}i:6;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:7;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:17:"render_member_box";s:11:"description";s:128:"Get a member display box. Some terminology refers to a member here as a 'poster', as this function is used in forum topics also.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The member box";}}s:15:"cns_may_whisper";a:6:{s:8:"filename";s:24:"sources/cns_members2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"target";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:17:"Member to be PT'd";s:11:"phpdoc_name";s:6:"target";}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:36:"Member to PT. (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:15:"cns_may_whisper";s:11:"description";s:56:"Find if a certain member may be PTd by a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the PT may be created";}}s:24:"member_field_is_required";a:6:{s:8:"filename";s:30:"sources/cns_members_action.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:43:"The member being edited (null: new member).";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:6:{s:4:"name";s:11:"field_class";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:51:"Special code representing what kind of field it is.";s:11:"phpdoc_name";s:11:"field_class";s:3:"set";s:31:"email_address dob required_cpfs";}i:2;a:7:{s:4:"name";s:13:"current_value";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:88:"The value the field has now (null: lookup from member record; cannot do this for a CPF).";s:11:"phpdoc_name";s:13:"current_value";}i:3;a:7:{s:4:"name";s:14:"editing_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:69:"The member doing the adding/editing operation (null: current member).";s:11:"phpdoc_name";s:14:"editing_member";}}s:4:"name";s:24:"member_field_is_required";s:11:"description";s:48:"Find whether a member's field must be filled in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether the field must be filled in.";}}s:15:"cns_make_member";a:6:{s:8:"filename";s:30:"sources/cns_members_action.php";s:10:"parameters";a:41:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The password.";s:11:"phpdoc_name";s:8:"password";}i:2;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:19:"The e-mail address.";s:11:"phpdoc_name";s:13:"email_address";}i:3;a:5:{s:4:"name";s:16:"secondary_groups";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:66:"A list of secondary usergroups (null: default/current usergroups).";s:11:"phpdoc_name";s:16:"secondary_groups";}i:4;a:5:{s:4:"name";s:7:"dob_day";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:37:"Day of date of birth (null: unknown).";s:11:"phpdoc_name";s:7:"dob_day";}i:5;a:5:{s:4:"name";s:9:"dob_month";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:39:"Month of date of birth (null: unknown).";s:11:"phpdoc_name";s:9:"dob_month";}i:6;a:5:{s:4:"name";s:8:"dob_year";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:38:"Year of date of birth (null: unknown).";s:11:"phpdoc_name";s:8:"dob_year";}i:7;a:5:{s:4:"name";s:13:"custom_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:46:"A map of custom field values (fieldID=>value).";s:11:"phpdoc_name";s:13:"custom_fields";}i:8;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:40:"The member timezone (null: auto-detect).";s:11:"phpdoc_name";s:8:"timezone";}i:9;a:7:{s:4:"name";s:13:"primary_group";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:37:"The member's primary (null: default).";s:11:"phpdoc_name";s:13:"primary_group";}i:10;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:39:"Whether the profile has been validated.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:9:"join_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:35:"When the member joined (null: now).";s:11:"phpdoc_name";s:9:"join_time";}i:12;a:7:{s:4:"name";s:15:"last_visit_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:"When the member last visited (null: now).";s:11:"phpdoc_name";s:15:"last_visit_time";}i:13;a:7:{s:4:"name";s:5:"theme";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:"The member's default theme.";s:11:"phpdoc_name";s:5:"theme";}i:14;a:7:{s:4:"name";s:10:"avatar_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:78:"The URL to the member's avatar (blank: none) (null: choose one automatically).";s:11:"phpdoc_name";s:10:"avatar_url";}i:15;a:7:{s:4:"name";s:9:"signature";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 member's signature (blank: none).";s:11:"phpdoc_name";s:9:"signature";}i:16;a:7:{s:4:"name";s:14:"is_perm_banned";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:41:"Whether the member is permanently banned.";s:11:"phpdoc_name";s:14:"is_perm_banned";}i:17;a:7:{s:4:"name";s:13:"preview_posts";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 posts are previewed before they are made (null: calculate automatically).";s:11:"phpdoc_name";s:13:"preview_posts";}i:18;a:7:{s:4:"name";s:10:"reveal_age";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:38:"Whether the member's age may be shown.";s:11:"phpdoc_name";s:10:"reveal_age";}i:19;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:45:"The member's title (blank: get from primary).";s:11:"phpdoc_name";s:5:"title";}i:20;a:7:{s:4:"name";s:9:"photo_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:44:"The URL to the member's photo (blank: none).";s:11:"phpdoc_name";s:9:"photo_url";}i:21;a:7:{s:4:"name";s:15:"photo_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:54:"The URL to the member's photo thumbnail (blank: none).";s:11:"phpdoc_name";s:15:"photo_thumb_url";}i:22;a:7:{s:4:"name";s:16:"views_signatures";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 member sees signatures in posts.";s:11:"phpdoc_name";s:16:"views_signatures";}i:23;a:7:{s:4:"name";s:28:"auto_monitor_contrib_content";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:125:"Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).";s:11:"phpdoc_name";s:28:"auto_monitor_contrib_content";}i:24;a:7:{s:4:"name";s:8:"language";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:42:"The member's language (null: auto detect).";s:11:"phpdoc_name";s:8:"language";}i:25;a:7:{s:4:"name";s:12:"allow_emails";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:47:"Whether the member allows e-mails via the site.";s:11:"phpdoc_name";s:12:"allow_emails";}i:26;a:7:{s:4:"name";s:23:"allow_emails_from_staff";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:58:"Whether the member allows e-mails from staff via the site.";s:11:"phpdoc_name";s:23:"allow_emails_from_staff";}i:27;a:7:{s:4:"name";s:10:"ip_address";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:59:"The member's IP address (null: IP address of current user).";s:11:"phpdoc_name";s:10:"ip_address";}i:28;a:7:{s:4:"name";s:28:"validated_email_confirm_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:77:"The code required before the account becomes active (blank: already entered).";s:11:"phpdoc_name";s:28:"validated_email_confirm_code";}i:29;a:7:{s:4:"name";s:17:"check_correctness";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to check details for correctness.";s:11:"phpdoc_name";s:17:"check_correctness";}i:30;a:7:{s:4:"name";s:29:"password_compatibility_scheme";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:175:"The compatibility scheme that the password operates in (blank: none) (null: none [meaning normal Composr salted style] or plain, depending on whether passwords are encrypted).";s:11:"phpdoc_name";s:29:"password_compatibility_scheme";}i:31;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:93:"The password salt (blank: password compatibility scheme does not use a salt / auto-generate).";s:11:"phpdoc_name";s:4:"salt";}i:32;a:7:{s:4:"name";s:16:"last_submit_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:62:"The time the member last made a submission (null: set to now).";s:11:"phpdoc_name";s:16:"last_submit_time";}i:33;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:34;a:7:{s:4:"name";s:16:"highlighted_name";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 the member username will be highlighted.";s:11:"phpdoc_name";s:16:"highlighted_name";}i:35;a:7:{s:4:"name";s:8:"pt_allow";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:34:"Usergroups that may PT the member.";s:11:"phpdoc_name";s:8:"pt_allow";}i:36;a:7:{s:4:"name";s:13:"pt_rules_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:82:"Rules that other members must agree to before they may start a PT with the member.";s:11:"phpdoc_name";s:13:"pt_rules_text";}i:37;a:7:{s:4:"name";s:18:"on_probation_until";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:62:"When the member is on probation until (null: not on probation)";s:11:"phpdoc_name";s:18:"on_probation_until";}i:38;a:7:{s:4:"name";s:14:"auto_mark_read";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:"Mark topics as read automatically";s:11:"phpdoc_name";s:14:"auto_mark_read";}i:39;a:7:{s:4:"name";s:13:"profile_views";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:36:"Total number of views to the profile";s:11:"phpdoc_name";s:13:"profile_views";}i:40;a:7:{s:4:"name";s:14:"total_sessions";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:44:"Total number of sessions (basically, visits)";s:11:"phpdoc_name";s:14:"total_sessions";}}s:4:"name";s:15:"cns_make_member";s:11:"description";s:13:"Add a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:25:"The ID of the new member.";}}s:28:"cns_make_boiler_custom_field";a:6:{s:8:"filename";s:30:"sources/cns_members_action.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:50:"The identifier of the boiler custom profile field.";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:28:"cns_make_boiler_custom_field";s:11:"description";s:99:"Make a custom profile field from one of the predefined templates (this is often used by importers).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:39:"The ID of the new custom profile field.";}}s:19:"get_cpf_storage_for";a:6:{s:8:"filename";s:30:"sources/cns_members_action.php";s:10:"parameters";a:3:{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:15:"The field type.";s:11:"phpdoc_name";s:4:"type";}i:1;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:31:"Whether the field is encrypted.";s:11:"phpdoc_name";s:9:"encrypted";}i:2;a:7:{s:4:"name";s:8:"_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:53:"The default value to use (null: none / null default).";s:11:"phpdoc_name";s:8:"_default";}}s:4:"name";s:19:"get_cpf_storage_for";s:11:"description";s:42:"Find how to store a field in the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:81:"A tuple: the DB field type, whether to index, the default (in correct data type).";}}s:21:"cns_make_custom_field";a:6:{s:8:"filename";s:30:"sources/cns_members_action.php";s:10:"parameters";a:17:{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:18:"Name of the field.";s:11:"phpdoc_name";s:4:"name";}i:1;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:69:"Whether the field is locked (i.e. cannot be deleted from the system).";s:11:"phpdoc_name";s:6:"locked";}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:10:"SHORT_TEXT";s:11:"description";s:25:"Description of the field.";s:11:"phpdoc_name";s:11:"description";}i:3;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:32:"The default value for the field.";s:11:"phpdoc_name";s:7:"default";}i:4;a:7:{s:4:"name";s:11:"public_view";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:39:"Whether the field is publicly viewable.";s:11:"phpdoc_name";s:11:"public_view";}i:5;a:7:{s:4:"name";s:10:"owner_view";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 viewable by the owner.";s:11:"phpdoc_name";s:10:"owner_view";}i:6;a:7:{s:4:"name";s:9:"owner_set";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 the field may be set by the owner.";s:11:"phpdoc_name";s:9:"owner_set";}i:7;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:31:"Whether the field is encrypted.";s:11:"phpdoc_name";s:9:"encrypted";}i:8;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:22:"The type of the field.";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:86:"short_text long_text short_trans long_trans integer upload picture url list tick float";}i:9;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:67:"Whether it is required that every member have this field filled in.";s:11:"phpdoc_name";s:8:"required";}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:124:"Whether this field is shown in posts and places where member details are highlighted (such as an image in a member gallery).";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:83:"Whether this field is shown in preview places, such as in the forum member tooltip.";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:62:"The order of this field relative to other fields (null: next).";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: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: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";}i:16;a:7:{s:4:"name";s:12:"no_name_dupe";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to check that no field has this name already.";s:11:"phpdoc_name";s:12:"no_name_dupe";}}s:4:"name";s:21:"cns_make_custom_field";s:11:"description";s:28:"Make a custom profile field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:39:"The ID of the new custom profile field.";}}s:17:"build_cpf_indices";a:5:{s:8:"filename";s:30:"sources/cns_members_action.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:9:"AUTO_LINK";s:11:"description";s:7:"CPF ID.";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"index";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:83:"Whether an index is needed for search purposes (there may be other reasons though).";s:11:"phpdoc_name";s:5:"index";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"CPF type.";s:11:"phpdoc_name";s:4:"type";}i:3;a:5:{s:4:"name";s:5:"_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Underlying field type.";s:11:"phpdoc_name";s:5:"_type";}}s:4:"name";s:17:"build_cpf_indices";s:11:"description";s:34:"Make custom profile field indices.";s:5:"flags";a:0:{}}s:25:"init__cns_members_action2";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"init__cns_members_action2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:32:"member_get_csv_headings_extended";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"member_get_csv_headings_extended";s:11:"description";s:54:"Get extended field mapping data for CSV import/export.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"Triple: headings, CPFs, subscription type data";}}s:23:"member_get_csv_headings";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"member_get_csv_headings";s:11:"description";s:45:"Get field mapping data for CSV import/export.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A map of heading information (human name to field name/encoding details)";}}s:35:"create_selection_list_timezone_list";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:1:{i:0;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:7:"?string";s:11:"description";s:49:"Current timezone to select (null: server default)";s:11:"phpdoc_name";s:8:"timezone";}}s:4:"name";s:35:"create_selection_list_timezone_list";s:11:"description";s:24:"Get a list of timezones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"List of timezones";}}s:17:"approve_ip_script";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"approve_ip_script";s:11:"description";s:74:"Validate an IP address, indirectly by passing through a confirmation code.";s:5:"flags";a:0:{}}s:28:"get_username_from_human_name";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.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:10:"SHORT_TEXT";s:11:"description";s:46:"The desired human name for the member profile.";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:28:"get_username_from_human_name";s:11:"description";s:158:"If we are using human names for usernames, a conflict is likely. Store a suffixed variety. Maybe later Composr will strip these suffixes out in some contexts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"A unique username.";}}s:30:"cns_member_external_linker_ask";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The username for the member profile.";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The type of member profile we are finishing off.";s:11:"phpdoc_name";s:4:"type";}i:2;a:7:{s:4:"name";s:13:"email_address";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:42:"Auto-detected e-mail address (blank: none)";s:11:"phpdoc_name";s:13:"email_address";}i:3;a:7:{s:4:"name";s:7:"dob_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:37:"Auto-detected DOB day (null: unknown)";s:11:"phpdoc_name";s:7:"dob_day";}i:4;a:7:{s:4:"name";s:9:"dob_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:39:"Auto-detected DOB month (null: unknown)";s:11:"phpdoc_name";s:9:"dob_month";}i:5;a:7:{s:4:"name";s:8:"dob_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:38:"Auto-detected DOB year (null: unknown)";s:11:"phpdoc_name";s:8:"dob_year";}i:6;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:38:"Auto-detected Timezone (null: unknown)";s:11:"phpdoc_name";s:8:"timezone";}i:7;a:7:{s:4:"name";s:8:"language";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:38:"Auto-detected Language (null: unknown)";s:11:"phpdoc_name";s:8:"language";}}s:4:"name";s:30:"cns_member_external_linker_ask";s:11:"description";s:146:"Get a form for finishing off a member profile (such as for LDAP or httpauth, where a partial profile is automatically made, but needs completion).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The form.";}}s:26:"cns_member_external_linker";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The username for the member profile.";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The password for the member profile.";s:11:"phpdoc_name";s:8:"password";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The type of member profile we are finishing off.";s:11:"phpdoc_name";s:4:"type";}i:3;a:7:{s:4:"name";s:11:"email_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:48:"Whether to check for duplicated email addresses.";s:11:"phpdoc_name";s:11:"email_check";}i:4;a:7:{s:4:"name";s:13:"email_address";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:42:"Auto-detected e-mail address (blank: none)";s:11:"phpdoc_name";s:13:"email_address";}i:5;a:7:{s:4:"name";s:7:"dob_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:37:"Auto-detected DOB day (null: unknown)";s:11:"phpdoc_name";s:7:"dob_day";}i:6;a:7:{s:4:"name";s:9:"dob_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:39:"Auto-detected DOB month (null: unknown)";s:11:"phpdoc_name";s:9:"dob_month";}i:7;a:7:{s:4:"name";s:8:"dob_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:38:"Auto-detected DOB year (null: unknown)";s:11:"phpdoc_name";s:8:"dob_year";}i:8;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:38:"Auto-detected Timezone (null: unknown)";s:11:"phpdoc_name";s:8:"timezone";}i:9;a:7:{s:4:"name";s:8:"language";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:38:"Auto-detected Language (null: unknown)";s:11:"phpdoc_name";s:8:"language";}i:10;a:7:{s:4:"name";s:10:"avatar_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:78:"The URL to the member's avatar (blank: none) (null: choose one automatically).";s:11:"phpdoc_name";s:10:"avatar_url";}i:11;a:7:{s:4:"name";s:9:"photo_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:44:"The URL to the member's photo (blank: none).";s:11:"phpdoc_name";s:9:"photo_url";}i:12;a:7:{s:4:"name";s:15:"photo_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:54:"The URL to the member's photo thumbnail (blank: none).";s:11:"phpdoc_name";s:15:"photo_thumb_url";}}s:4:"name";s:26:"cns_member_external_linker";s:11:"description";s:134:"Finishing off of a member profile (such as for LDAP or httpauth, where a partial profile is automatically made, but needs completion).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:43:"The member ID for the finished off profile.";}}s:25:"cns_read_in_custom_fields";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"custom_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:68:"The CPF field rows that we'll be reading in the member's values for.";s:11:"phpdoc_name";s:13:"custom_fields";}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:34:"Member involved (null: new member)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:25:"cns_read_in_custom_fields";s:11:"description";s:43:"Read in the custom profile field POST data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"The CPF data.";}}s:21:"cns_get_member_fields";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:26:{i:0;a:7:{s:4:"name";s:9:"mini_mode";s:7:"default";s:12:"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 we are only handling the essential details of a profile.";s:11:"phpdoc_name";s:9:"mini_mode";}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 ID of the member we are handling (null: new member).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:6:"groups";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:56:"A list of usergroups (null: default/current usergroups).";s:11:"phpdoc_name";s:6:"groups";}i:3;a:7:{s:4:"name";s:13:"email_address";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:19:"The e-mail address.";s:11:"phpdoc_name";s:13:"email_address";}i:4;a:7:{s:4:"name";s:13:"preview_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:49:"Whether posts are previewed before they are made.";s:11:"phpdoc_name";s:13:"preview_posts";}i:5;a:7:{s:4:"name";s:7:"dob_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:39:"Day of date of birth (null: not known).";s:11:"phpdoc_name";s:7:"dob_day";}i:6;a:7:{s:4:"name";s:9:"dob_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:41:"Month of date of birth (null: not known).";s:11:"phpdoc_name";s:9:"dob_month";}i:7;a:7:{s:4:"name";s:8:"dob_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:40:"Year of date of birth (null: not known).";s:11:"phpdoc_name";s:8:"dob_year";}i:8;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:41:"The member timezone (null: site default).";s:11:"phpdoc_name";s:8:"timezone";}i:9;a:7:{s:4:"name";s:13:"custom_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:66:"A map of custom fields values (field-id=>value) (null: not known).";s:11:"phpdoc_name";s:13:"custom_fields";}i:10;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:44:"The members default theme (null: not known).";s:11:"phpdoc_name";s:5:"theme";}i:11;a:7:{s:4:"name";s:10:"reveal_age";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 members age may be shown.";s:11:"phpdoc_name";s:10:"reveal_age";}i:12;a:7:{s:4:"name";s:16:"views_signatures";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 member sees signatures in posts.";s:11:"phpdoc_name";s:16:"views_signatures";}i:13;a:7:{s:4:"name";s:28:"auto_monitor_contrib_content";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:125:"Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).";s:11:"phpdoc_name";s:28:"auto_monitor_contrib_content";}i:14;a:7:{s:4:"name";s:8:"language";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:41:"The members language (null: auto detect).";s:11:"phpdoc_name";s:8:"language";}i:15;a:7:{s:4:"name";s:12:"allow_emails";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:47:"Whether the member allows e-mails via the site.";s:11:"phpdoc_name";s:12:"allow_emails";}i:16;a:7:{s:4:"name";s:23:"allow_emails_from_staff";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:58:"Whether the member allows e-mails from staff via the site.";s:11:"phpdoc_name";s:23:"allow_emails_from_staff";}i:17;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:39:"Whether the profile has been validated.";s:11:"phpdoc_name";s:9:"validated";}i:18;a:7:{s:4:"name";s:13:"primary_group";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:38:"The members primary (null: not known).";s:11:"phpdoc_name";s:13:"primary_group";}i:19;a:7:{s:4:"name";s:8:"username";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:"The username.";s:11:"phpdoc_name";s:8:"username";}i:20;a:7:{s:4:"name";s:14:"is_perm_banned";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:41:"Whether the member is permanently banned.";s:11:"phpdoc_name";s:14:"is_perm_banned";}i:21;a:7:{s:4:"name";s:12:"special_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:64:"The special type of profile this is (blank: not a special type).";s:11:"phpdoc_name";s:12:"special_type";}i:22;a:7:{s:4:"name";s:16:"highlighted_name";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 the member username will be highlighted.";s:11:"phpdoc_name";s:16:"highlighted_name";}i:23;a:7:{s:4:"name";s:8:"pt_allow";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:34:"Usergroups that may PT the member.";s:11:"phpdoc_name";s:8:"pt_allow";}i:24;a:7:{s:4:"name";s:13:"pt_rules_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:82:"Rules that other members must agree to before they may start a PT with the member.";s:11:"phpdoc_name";s:13:"pt_rules_text";}i:25;a:7:{s:4:"name";s:18:"on_probation_until";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:102:"When the member is on probation until (null: just finished probation / or effectively was never on it)";s:11:"phpdoc_name";s:18:"on_probation_until";}}s:4:"name";s:21:"cns_get_member_fields";s:11:"description";s:62:"Get form fields for adding/editing/finishing a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A pair: The form fields, Hidden fields (both Tempcode).";}}s:30:"cns_get_member_fields_settings";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:25:{i:0;a:7:{s:4:"name";s:9:"mini_mode";s:7:"default";s:12:"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 we are only handling the essential details of a profile.";s:11:"phpdoc_name";s:9:"mini_mode";}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 ID of the member we are handling (null: new member).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:6:"groups";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:56:"A list of usergroups (null: default/current usergroups).";s:11:"phpdoc_name";s:6:"groups";}i:3;a:7:{s:4:"name";s:13:"email_address";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:19:"The e-mail address.";s:11:"phpdoc_name";s:13:"email_address";}i:4;a:7:{s:4:"name";s:13:"preview_posts";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 posts are previewed before they are made (null: calculate statistically).";s:11:"phpdoc_name";s:13:"preview_posts";}i:5;a:7:{s:4:"name";s:7:"dob_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:39:"Day of date of birth (null: not known).";s:11:"phpdoc_name";s:7:"dob_day";}i:6;a:7:{s:4:"name";s:9:"dob_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:41:"Month of date of birth (null: not known).";s:11:"phpdoc_name";s:9:"dob_month";}i:7;a:7:{s:4:"name";s:8:"dob_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:40:"Year of date of birth (null: not known).";s:11:"phpdoc_name";s:8:"dob_year";}i:8;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:41:"The member timezone (null: site default).";s:11:"phpdoc_name";s:8:"timezone";}i:9;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:44:"The members default theme (null: not known).";s:11:"phpdoc_name";s:5:"theme";}i:10;a:7:{s:4:"name";s:10:"reveal_age";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 members age may be shown.";s:11:"phpdoc_name";s:10:"reveal_age";}i:11;a:7:{s:4:"name";s:16:"views_signatures";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 member sees signatures in posts.";s:11:"phpdoc_name";s:16:"views_signatures";}i:12;a:7:{s:4:"name";s:28:"auto_monitor_contrib_content";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:125:"Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).";s:11:"phpdoc_name";s:28:"auto_monitor_contrib_content";}i:13;a:7:{s:4:"name";s:8:"language";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:41:"The members language (null: auto detect).";s:11:"phpdoc_name";s:8:"language";}i:14;a:7:{s:4:"name";s:12:"allow_emails";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:47:"Whether the member allows e-mails via the site.";s:11:"phpdoc_name";s:12:"allow_emails";}i:15;a:7:{s:4:"name";s:23:"allow_emails_from_staff";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:58:"Whether the member allows e-mails from staff via the site.";s:11:"phpdoc_name";s:23:"allow_emails_from_staff";}i:16;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:39:"Whether the profile has been validated.";s:11:"phpdoc_name";s:9:"validated";}i:17;a:7:{s:4:"name";s:13:"primary_group";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:38:"The members primary (null: not known).";s:11:"phpdoc_name";s:13:"primary_group";}i:18;a:7:{s:4:"name";s:8:"username";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:"The username.";s:11:"phpdoc_name";s:8:"username";}i:19;a:7:{s:4:"name";s:14:"is_perm_banned";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:41:"Whether the member is permanently banned.";s:11:"phpdoc_name";s:14:"is_perm_banned";}i:20;a:7:{s:4:"name";s:12:"special_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:64:"The special type of profile this is (blank: not a special type).";s:11:"phpdoc_name";s:12:"special_type";}i:21;a:7:{s:4:"name";s:16:"highlighted_name";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 the member username will be highlighted.";s:11:"phpdoc_name";s:16:"highlighted_name";}i:22;a:7:{s:4:"name";s:8:"pt_allow";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:34:"Usergroups that may PT the member.";s:11:"phpdoc_name";s:8:"pt_allow";}i:23;a:7:{s:4:"name";s:13:"pt_rules_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:82:"Rules that other members must agree to before they may start a PT with the member.";s:11:"phpdoc_name";s:13:"pt_rules_text";}i:24;a:7:{s:4:"name";s:18:"on_probation_until";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:102:"When the member is on probation until (null: just finished probation / or effectively was never on it)";s:11:"phpdoc_name";s:18:"on_probation_until";}}s:4:"name";s:30:"cns_get_member_fields_settings";s:11:"description";s:62:"Get form fields for adding/editing/finishing a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A pair: The form fields, Hidden fields (both Tempcode).";}}s:29:"cns_get_member_fields_profile";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:9:"mini_mode";s:7:"default";s:12:"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 we are only handling the essential details of a profile.";s:11:"phpdoc_name";s:9:"mini_mode";}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 ID of the member we are handling (null: new member).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:6:"groups";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:56:"A list of usergroups (null: default/current usergroups).";s:11:"phpdoc_name";s:6:"groups";}i:3;a:7:{s:4:"name";s:13:"custom_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:66:"A map of custom fields values (field-id=>value) (null: not known).";s:11:"phpdoc_name";s:13:"custom_fields";}}s:4:"name";s:29:"cns_get_member_fields_profile";s:11:"description";s:62:"Get form fields for adding/editing/finishing a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A pair: The form fields, Hidden fields (both Tempcode).";}}s:15:"cns_edit_member";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:33:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:13:"email_address";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:40:"The e-mail address. (null: don't change)";s:11:"phpdoc_name";s:13:"email_address";}i:2;a:5:{s:4:"name";s:13:"preview_posts";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:70:"Whether posts are previewed before they are made. (null: don't change)";s:11:"phpdoc_name";s:13:"preview_posts";}i:3;a:5:{s:4:"name";s:7:"dob_day";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:54:"Day of date of birth. (null: don't change) (-1: deset)";s:11:"phpdoc_name";s:7:"dob_day";}i:4;a:5:{s:4:"name";s:9:"dob_month";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:56:"Month of date of birth. (null: don't change) (-1: deset)";s:11:"phpdoc_name";s:9:"dob_month";}i:5;a:5:{s:4:"name";s:8:"dob_year";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:55:"Year of date of birth. (null: don't change) (-1: deset)";s:11:"phpdoc_name";s:8:"dob_year";}i:6;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:41:"The member timezone. (null: don't change)";s:11:"phpdoc_name";s:8:"timezone";}i:7;a:5:{s:4:"name";s:13:"primary_group";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:41:"The members primary (null: don't change).";s:11:"phpdoc_name";s:13:"primary_group";}i:8;a:5:{s:4:"name";s:13:"custom_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"A map of custom fields values (field-id=>value).";s:11:"phpdoc_name";s:13:"custom_fields";}i:9;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:47:"The members default theme. (null: don't change)";s:11:"phpdoc_name";s:5:"theme";}i:10;a:5:{s:4:"name";s:10:"reveal_age";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:58:"Whether the members age may be shown. (null: don't change)";s:11:"phpdoc_name";s:10:"reveal_age";}i:11;a:5:{s:4:"name";s:16:"views_signatures";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:65:"Whether the member sees signatures in posts. (null: don't change)";s:11:"phpdoc_name";s:16:"views_signatures";}i:12;a:5:{s:4:"name";s:28:"auto_monitor_contrib_content";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:114:"Whether the member automatically is enabled for notifications for content they contribute to. (null: don't change)";s:11:"phpdoc_name";s:28:"auto_monitor_contrib_content";}i:13;a:5:{s:4:"name";s:8:"language";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:42:"The members language. (null: don't change)";s:11:"phpdoc_name";s:8:"language";}i:14;a:5:{s:4:"name";s:12:"allow_emails";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:68:"Whether the member allows e-mails via the site. (null: don't change)";s:11:"phpdoc_name";s:12:"allow_emails";}i:15;a:5:{s:4:"name";s:23:"allow_emails_from_staff";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:79:"Whether the member allows e-mails from staff via the site. (null: don't change)";s:11:"phpdoc_name";s:23:"allow_emails_from_staff";}i:16;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:87:"Whether the profile has been validated (null: do not change this). (null: don't change)";s:11:"phpdoc_name";s:9:"validated";}i:17;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:34:"The username. (null: don't change)";s:11:"phpdoc_name";s:8:"username";}i:18;a:7:{s:4:"name";s:8:"password";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:"The password. (null: don't change)";s:11:"phpdoc_name";s:8:"password";}i:19;a:7:{s:4:"name";s:16:"highlighted_name";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:69:"Whether the member username will be highlighted. (null: don't change)";s:11:"phpdoc_name";s:16:"highlighted_name";}i:20;a:7:{s:4:"name";s:8:"pt_allow";s:7:"default";s:1:"*";s:11:"default_raw";s:3:"'*'";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:55:"Usergroups that may PT the member. (null: don't change)";s:11:"phpdoc_name";s:8:"pt_allow";}i:21;a:7:{s:4:"name";s:13:"pt_rules_text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:103:"Rules that other members must agree to before they may start a PT with the member. (null: don't change)";s:11:"phpdoc_name";s:13:"pt_rules_text";}i:22;a:7:{s:4:"name";s:18:"on_probation_until";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:58:"When the member is on probation until (null: don't change)";s:11:"phpdoc_name";s:18:"on_probation_until";}i:23;a:7:{s:4:"name";s:14:"auto_mark_read";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:54:"Mark topics as read automatically (null: don't change)";s:11:"phpdoc_name";s:14:"auto_mark_read";}i:24;a:7:{s:4:"name";s:9:"join_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:43:"When the member joined (null: don't change)";s:11:"phpdoc_name";s:9:"join_time";}i:25;a:7:{s:4:"name";s:10:"avatar_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:27:"Avatar (null: don't change)";s:11:"phpdoc_name";s:10:"avatar_url";}i:26;a:7:{s:4:"name";s:9:"signature";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:30:"Signature (null: don't change)";s:11:"phpdoc_name";s:9:"signature";}i:27;a:7:{s:4:"name";s:14:"is_perm_banned";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:34:"Banned status (null: don't change)";s:11:"phpdoc_name";s:14:"is_perm_banned";}i:28;a:7:{s:4:"name";s:9:"photo_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:30:"Photo URL (null: don't change)";s:11:"phpdoc_name";s:9:"photo_url";}i:29;a:7:{s:4:"name";s:15:"photo_thumb_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:46:"URL of thumbnail of photo (null: don't change)";s:11:"phpdoc_name";s:15:"photo_thumb_url";}i:30;a:7:{s:4:"name";s:4:"salt";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:34:"Password salt (null: don't change)";s:11:"phpdoc_name";s:4:"salt";}i:31;a:7:{s:4:"name";s:29:"password_compatibility_scheme";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:50:"Password compatibility scheme (null: don't change)";s:11:"phpdoc_name";s:29:"password_compatibility_scheme";}i:32;a:7:{s:4:"name";s:11:"skip_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:71:"Whether to skip security checks and most of the change-triggered emails";s:11:"phpdoc_name";s:11:"skip_checks";}}s:4:"name";s:15:"cns_edit_member";s:11:"description";s:14:"Edit a member.";s:5:"flags";a:0:{}}s:17:"cns_delete_member";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.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:9:"AUTO_LINK";s:11:"description";s:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:17:"cns_delete_member";s:11:"description";s:16:"Delete a member.";s:5:"flags";a:0:{}}s:14:"cns_ban_member";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.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:9:"AUTO_LINK";s:11:"description";s:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:14:"cns_ban_member";s:11:"description";s:13:"Ban a member.";s:5:"flags";a:0:{}}s:16:"cns_unban_member";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.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:9:"AUTO_LINK";s:11:"description";s:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:16:"cns_unban_member";s:11:"description";s:15:"Unban a member.";s:5:"flags";a:0:{}}s:21:"cns_edit_custom_field";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:16:{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:35:"The ID of the custom profile field.";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:10:"SHORT_TEXT";s:11:"description";s:18:"Name of the field.";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"Description of the field.";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The default value for the field.";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:11:"public_view";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the field is publicly viewable.";s:11:"phpdoc_name";s:11:"public_view";}i:5;a:5:{s:4:"name";s:10:"owner_view";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"Whether the field is viewable by the owner.";s:11:"phpdoc_name";s:10:"owner_view";}i:6;a:5:{s:4:"name";s:9:"owner_set";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:42:"Whether the field may be set by the owner.";s:11:"phpdoc_name";s:9:"owner_set";}i:7;a:5:{s:4:"name";s:9:"encrypted";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:38:"Whether the field should be encrypted.";s:11:"phpdoc_name";s:9:"encrypted";}i:8;a:5:{s:4:"name";s:8:"required";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:8:"required";}i:9;a:5:{s:4:"name";s:13:"show_in_posts";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:124:"Whether this field is shown in posts and places where member details are highlighted (such as an image in a member gallery).";s:11:"phpdoc_name";s:13:"show_in_posts";}i:10;a:5:{s:4:"name";s:21:"show_in_post_previews";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:83:"Whether this field is shown in preview places, such as in the forum member tooltip.";s:11:"phpdoc_name";s:21:"show_in_post_previews";}i:11;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:49:"The order of this field relative to other fields.";s:11:"phpdoc_name";s:5:"order";}i:12;a:5:{s:4:"name";s:10:"only_group";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:13;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The type of the field.";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:86:"short_text long_text short_trans long_trans integer upload picture url list tick float";}i:14;a:5:{s:4:"name";s:17:"show_on_join_form";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:67:"Whether it is required that every member have this field filled in.";s:11:"phpdoc_name";s:17:"show_on_join_form";}i:15;a:5:{s:4:"name";s:7:"options";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:21:"cns_edit_custom_field";s:11:"description";s:28:"Edit a custom profile field.";s:5:"flags";a:0:{}}s:23:"cns_delete_custom_field";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.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:35:"The ID of the custom profile field.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:23:"cns_delete_custom_field";s:11:"description";s:30:"Delete a custom profile field.";s:5:"flags";a:0:{}}s:20:"cns_set_custom_field";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:5:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:8:"field_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:20:"The field being set.";s:11:"phpdoc_name";s:8:"field_id";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:127:"The value of the field. For a trans-type field, this can be either a lang-ID to be copied (from forum DB), or an actual string.";s:11:"phpdoc_name";s:5:"value";}i:3;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:34:"The field type (null: look it up).";s:11:"phpdoc_name";s:4:"type";}i:4;a:7:{s:4:"name";s:5:"defer";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:90:"Whether to defer the change, by returning a result change rather than doing it right away.";s:11:"phpdoc_name";s:5:"defer";}}s:4:"name";s:20:"cns_set_custom_field";s:11:"description";s:40:"Set a custom profile field for a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Mapping change (null: none / can't defer).";}}s:20:"cns_check_name_valid";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:1;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:56:"The username (may get altered) (null: nothing to check).";s:11:"phpdoc_name";s:8:"username";}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:161:"The member (null: member not actually added yet; this ID is only given for the duplication check, to make sure it doesn't think we are duplicating with ourself).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"password";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:38:"The password (null: nothing to check).";s:11:"phpdoc_name";s:8:"password";}i:3;a:7:{s:4:"name";s:13:"return_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to return errors instead of dieing on them.";s:11:"phpdoc_name";s:13:"return_errors";}}s:4:"name";s:20:"cns_check_name_valid";s:11:"description";s:69:"Check a username is valid for adding, and possibly also the password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:19:"Error (null: none).";}}s:23:"cns_member_choose_title";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"new_title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The new title.";s:11:"phpdoc_name";s:9:"new_title";}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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"cns_member_choose_title";s:11:"description";s:51:"Edit a member's personal title, and check validity.";s:5:"flags";a:0:{}}s:27:"cns_member_choose_signature";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"new_signature";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The new signature.";s:11:"phpdoc_name";s:13:"new_signature";}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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:27:"cns_member_choose_signature";s:11:"description";s:46:"Edit a member's signature, and check validity.";s:5:"flags";a:0:{}}s:24:"cns_member_choose_avatar";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"avatar_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The new avatar URL.";s:11:"phpdoc_name";s:10:"avatar_url";}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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:24:"cns_member_choose_avatar";s:11:"description";s:43:"Edit a member's avatar, and check validity.";s:5:"flags";a:0:{}}s:23:"cns_member_choose_photo";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"param_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:52:"The identifier for the name of the posted URL field.";s:11:"phpdoc_name";s:10:"param_name";}i:1;a:5:{s:4:"name";s:11:"upload_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:49:"The identifier for the name of the posted upload.";s:11:"phpdoc_name";s:11:"upload_name";}i:2;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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"cns_member_choose_photo";s:11:"description";s:42:"Edit a member's photo, and check validity.";s:5:"flags";a:0:{}}s:32:"cns_member_choose_photo_concrete";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:3:{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:13:"URL to photo.";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:23:"URL to thumbnail photo.";s:11:"phpdoc_name";s:9:"thumb_url";}i:2;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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:32:"cns_member_choose_photo_concrete";s:11:"description";s:22:"Edit a member's photo.";s:5:"flags";a:0:{}}s:30:"update_member_username_caching";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{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:14:"The member ID.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The new username that is being set for them.";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:30:"update_member_username_caching";s:11:"description";s:155:"Update caching against a member's username. This doesn't change the username in the actual member record -- it is assumed that this will be done elsewhere.";s:5:"flags";a:0:{}}s:30:"cns_delete_boiler_custom_field";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The identifier of the boiler custom profile field.";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:30:"cns_delete_boiler_custom_field";s:11:"description";s:101:"Delete a custom profile field from one of the predefined templates (this is often used by importers).";s:5:"flags";a:0:{}}s:26:"cns_list_multi_moderations";a:6:{s:8:"filename";s:26:"sources/cns_moderation.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:29:"The forum we are listing for.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:26:"cns_list_multi_moderations";s:11:"description";s:67:"List all the multi moderations that may be used in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"List of multi moderations.";}}s:32:"cns_may_perform_multi_moderation";a:6:{s:8:"filename";s:26:"sources/cns_moderation.php";s:10:"parameters";a:2:{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:10:"The forum.";s:11:"phpdoc_name";s:8:"forum_id";}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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:32:"cns_may_perform_multi_moderation";s:11:"description";s:74:"Whether a certain member may perform multi moderations in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:7:"Answer.";}}s:20:"cns_may_warn_members";a:6:{s:8:"filename";s:26:"sources/cns_moderation.php";s:10:"parameters";a:1:{i:0;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:20:"cns_may_warn_members";s:11:"description";s:67:"Whether a certain member may give formal warnings to other members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:7:"Answer.";}}s:16:"cns_get_warnings";a:6:{s:8:"filename";s:26:"sources/cns_moderation.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:16:"cns_get_warnings";s:11:"description";s:46:"Get all the warning rows for a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The warning rows.";}}s:25:"cns_make_multi_moderation";a:6:{s:8:"filename";s:33:"sources/cns_moderation_action.php";s:10:"parameters";a:8:{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:33:"The name of the multi moderation.";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:9:"post_text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:61:"The post text to add when applying (blank: don't add a post).";s:11:"phpdoc_name";s:9:"post_text";}i:2;a:5:{s:4:"name";s:7:"move_to";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:62:"The forum to move the topic when applying (null: do not move).";s:11:"phpdoc_name";s:7:"move_to";}i:3;a:5:{s:4:"name";s:9:"pin_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:47:"The pin state after applying (null: unchanged).";s:11:"phpdoc_name";s:9:"pin_state";}i:4;a:5:{s:4:"name";s:10:"sink_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:48:"The sink state after applying (null: unchanged).";s:11:"phpdoc_name";s:10:"sink_state";}i:5;a:5:{s:4:"name";s:10:"open_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:48:"The open state after applying (null: unchanged).";s:11:"phpdoc_name";s:10:"open_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:68:"The forum multi code for where this multi moderation may be applied.";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:17:"The title suffix.";s:11:"phpdoc_name";s:12:"title_suffix";}}s:4:"name";s:25:"cns_make_multi_moderation";s:11:"description";s:37:"Add a multi moderation to the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:42:"The ID of the multi moderation just added.";}}s:25:"cns_edit_multi_moderation";a:5:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:9:{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:46:"The ID of the multi moderation we are editing.";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:10:"SHORT_TEXT";s:11:"description";s:33:"The name of the multi moderation.";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:9:"post_text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:58:"The default post text to add when applying (may be blank).";s:11:"phpdoc_name";s:9:"post_text";}i:3;a:5:{s:4:"name";s:7:"move_to";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:62:"The forum to move the topic when applying (null: do not move).";s:11:"phpdoc_name";s:7:"move_to";}i:4;a:5:{s:4:"name";s:9:"pin_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:47:"The pin state after applying (null: unchanged).";s:11:"phpdoc_name";s:9:"pin_state";}i:5;a:5:{s:4:"name";s:10:"sink_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:48:"The sink state after applying (null: unchanged).";s:11:"phpdoc_name";s:10:"sink_state";}i:6;a:5:{s:4:"name";s:10:"open_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:48:"The open state after applying (null: unchanged).";s:11:"phpdoc_name";s:10:"open_state";}i:7;a:5:{s:4:"name";s:16:"forum_multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:68:"The forum multi code for where this multi moderation may be applied.";s:11:"phpdoc_name";s:16:"forum_multi_code";}i:8;a:5:{s:4:"name";s:12:"title_suffix";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The title suffix.";s:11:"phpdoc_name";s:12:"title_suffix";}}s:4:"name";s:25:"cns_edit_multi_moderation";s:11:"description";s:24:"Edit a multi moderation.";s:5:"flags";a:0:{}}s:27:"cns_delete_multi_moderation";a:5:{s:8:"filename";s:34:"sources/cns_moderation_action2.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:47:"The ID of the multi moderation we are deleting.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:27:"cns_delete_multi_moderation";s:11:"description";s:26:"Delete a multi moderation.";s:5:"flags";a:0:{}}s:28:"cns_perform_multi_moderation";a:5:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:6:{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:49:"The ID of the multi moderation we are performing.";s:11:"phpdoc_name";s:2:"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:62:"The ID of the topic we are performing the multi moderation on.";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:62:"The reason for performing the multi moderation (may be blank).";s:11:"phpdoc_name";s:6:"reason";}i:3;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:77:"The post text for a post to be added to the topic (blank: do not add a post).";s:11:"phpdoc_name";s:9:"post_text";}i:4;a:7:{s:4:"name";s:13:"is_emphasised";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 post is marked emphasised.";s:11:"phpdoc_name";s:13:"is_emphasised";}i:5;a:7:{s:4:"name";s:8:"skip_sig";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 to skip showing the posters signature in the post.";s:11:"phpdoc_name";s:8:"skip_sig";}}s:4:"name";s:28:"cns_perform_multi_moderation";s:11:"description";s:27:"Perform a multi moderation.";s:5:"flags";a:0:{}}s:15:"warnings_script";a:5:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"warnings_script";s:11:"description";s:47:"Script for loading presets from saved warnings.";s:5:"flags";a:0:{}}s:16:"cns_make_warning";a:6:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:12:{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:24:"The member being warned.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:50:"An explanation for why the member is being warned.";s:11:"phpdoc_name";s:11:"explanation";}i:2;a:7:{s:4:"name";s:2:"by";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:52:"The member doing the warning (null: current member).";s:11:"phpdoc_name";s:2:"by";}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:36:"The time of the warning (null: now).";s:11:"phpdoc_name";s:4:"time";}i:4;a:7:{s:4:"name";s:10:"is_warning";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:32:"Whether this counts as a warning";s:11:"phpdoc_name";s:10:"is_warning";}i:5;a:7:{s:4:"name";s:18:"silence_from_topic";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:42:"The topic being silenced from (null: none)";s:11:"phpdoc_name";s:18:"silence_from_topic";}i:6;a:7:{s:4:"name";s:18:"silence_from_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:42:"The forum being silenced from (null: none)";s:11:"phpdoc_name";s:18:"silence_from_forum";}i:7;a:7:{s:4:"name";s:9:"probation";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:34:"Number of extra days for probation";s:11:"phpdoc_name";s:9:"probation";}i:8;a:7:{s:4:"name";s:9:"banned_ip";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:41:"The IP address being banned (blank: none)";s:11:"phpdoc_name";s:9:"banned_ip";}i:9;a:7:{s:4:"name";s:14:"charged_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:24:"The points being charged";s:11:"phpdoc_name";s:14:"charged_points";}i:10;a:7:{s:4:"name";s:13:"banned_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:34:"Whether the member is being banned";s:11:"phpdoc_name";s:13:"banned_member";}i:11;a:7:{s:4:"name";s:22:"changed_usergroup_from";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:50:"The usergroup being changed from (null: no change)";s:11:"phpdoc_name";s:22:"changed_usergroup_from";}}s:4:"name";s:16:"cns_make_warning";s:11:"description";s:21:"Add a formal warning.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:36:"The ID of the newly created warning.";}}s:16:"cns_edit_warning";a:6:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"warning_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:44:"The ID of the formal warning we are editing.";s:11:"phpdoc_name";s:10:"warning_id";}i:1;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:50:"An explanation for why the member is being warned.";s:11:"phpdoc_name";s:11:"explanation";}i:2;a:7:{s:4:"name";s:10:"is_warning";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:32:"Whether this counts as a warning";s:11:"phpdoc_name";s:10:"is_warning";}}s:4:"name";s:16:"cns_edit_warning";s:11:"description";s:22:"Edit a formal warning.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The member ID the warning was for.";}}s:18:"cns_delete_warning";a:6:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"warning_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:45:"The ID of the formal warning we are deleting.";s:11:"phpdoc_name";s:10:"warning_id";}}s:4:"name";s:18:"cns_delete_warning";s:11:"description";s:24:"Delete a formal warning.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The member ID the warning was for.";}}s:23:"init__cns_notifications";a:5:{s:8:"filename";s:29:"sources/cns_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"init__cns_notifications";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"cns_get_pp_rows";a:6:{s:8:"filename";s:29:"sources/cns_notifications.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:5:"limit";s:7:"default";i:5;s:11:"default_raw";s:1:"5";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:71:"The maximum number of rows to get (gets newest first) (null: no limit).";s:11:"phpdoc_name";s:5:"limit";}i:1;a:7:{s:4:"name";s:6:"unread";s:7:"default";s:12:"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 only get unread ones.";s:11:"phpdoc_name";s:6:"unread";}i:2;a:7:{s:4:"name";s:14:"include_inline";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to include inline personal posts.";s:11:"phpdoc_name";s:14:"include_inline";}i:3;a:7:{s:4:"name";s:12:"time_barrier";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:"Only since this date (null: no limit).";s:11:"phpdoc_name";s:12:"time_barrier";}}s:4:"name";s:15:"cns_get_pp_rows";s:11:"description";s:50:"Get the personal post rows for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"The personal post rows (with corresponding topic details).";}}s:22:"generate_notifications";a:6:{s:8:"filename";s:29:"sources/cns_notifications.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:22:"Member to look up for.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"generate_notifications";s:11:"description";s:44:"Calculate Conversr notifications and render.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:56:"A pair: Number of notifications, Rendered notifications.";}}s:20:"cns_may_edit_poll_by";a:6:{s:8:"filename";s:21:"sources/cns_polls.php";s:10:"parameters";a:3:{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:10:"The forum.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:10:"poll_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:15:"The poll owner.";s:11:"phpdoc_name";s:10:"poll_owner";}i:2;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:54:"The member we are checking for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:20:"cns_may_edit_poll_by";s:11:"description";s:84:"Find whether a member can alter a poll owned by a certain member in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:19:"cns_may_attach_poll";a:6:{s:8:"filename";s:21:"sources/cns_polls.php";s:10:"parameters";a:5:{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:10:"The topic.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:11:"topic_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:42:"The topic owner (null: ask the DB for it).";s:11:"phpdoc_name";s:11:"topic_owner";}i:2;a:7:{s:4:"name";s:16:"has_poll_already";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:63:"Whether the topic already has a poll (null: ask the DB for it).";s:11:"phpdoc_name";s:16:"has_poll_already";}i:3;a:7:{s:4:"name";s:8:"forum_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:52:"The forum the topic is in (null: ask the DB for it).";s:11:"phpdoc_name";s:8:"forum_id";}i:4;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:54:"The member we are checking for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:19:"cns_may_attach_poll";s:11:"description";s:60:"Find whether a member may attach a poll to a detailed topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:22:"cns_may_delete_poll_by";a:6:{s:8:"filename";s:21:"sources/cns_polls.php";s:10:"parameters";a:3:{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:10:"The forum.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:10:"poll_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:15:"The poll owner.";s:11:"phpdoc_name";s:10:"poll_owner";}i:2;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:54:"The member we are checking for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_may_delete_poll_by";s:11:"description";s:85:"Find whether a member can delete a poll owned by a certain member in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:20:"cns_poll_get_results";a:6:{s:8:"filename";s:21:"sources/cns_polls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:9:"The poll.";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:7:{s:4:"name";s:15:"request_results";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:106:"Whether we must record that the current member is requesting the results, blocking future voting for them.";s:11:"phpdoc_name";s:15:"request_results";}}s:4:"name";s:20:"cns_poll_get_results";s:11:"description";s:49:"Find a map of results relating to a certain poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The map of results (null: could not find poll).";}}s:13:"cns_make_poll";a:6:{s:8:"filename";s:28:"sources/cns_polls_action.php";s:10:"parameters";a:9:{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:39:"The ID of the topic to add the poll to.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:8:"question";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The question.";s:11:"phpdoc_name";s:8:"question";}i:2;a:5:{s:4:"name";s:10:"is_private";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:79:"Whether the result tallies are kept private until the poll is made non-private.";s:11:"phpdoc_name";s:10:"is_private";}i:3;a:5:{s:4:"name";s:7:"is_open";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the poll is open for voting.";s:11:"phpdoc_name";s:7:"is_open";}i:4;a:5:{s:4:"name";s:18:"minimum_selections";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The minimum number of selections that may be made.";s:11:"phpdoc_name";s:18:"minimum_selections";}i:5;a:5:{s:4:"name";s:18:"maximum_selections";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The maximum number of selections that may be made.";s:11:"phpdoc_name";s:18:"maximum_selections";}i:6;a:5:{s:4:"name";s:14:"requires_reply";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:68:"Whether members must have a post in the topic before they made vote.";s:11:"phpdoc_name";s:14:"requires_reply";}i:7;a:5:{s:4:"name";s:7:"answers";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:74:"A list of pairs of the potential voteable answers and the number of votes.";s:11:"phpdoc_name";s:7:"answers";}i:8;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:56:"Whether to check there are permissions to make the poll.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:13:"cns_make_poll";s:11:"description";s:17:"Add a forum poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:39:"The ID of the newly created forum poll.";}}s:13:"cns_edit_poll";a:6:{s:8:"filename";s:29:"sources/cns_polls_action2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"The ID of the poll we're editing.";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:5:{s:4:"name";s:8:"question";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The question.";s:11:"phpdoc_name";s:8:"question";}i:2;a:5:{s:4:"name";s:10:"is_private";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:79:"Whether the result tallies are kept private until the poll is made non-private.";s:11:"phpdoc_name";s:10:"is_private";}i:3;a:5:{s:4:"name";s:7:"is_open";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the poll is open for voting.";s:11:"phpdoc_name";s:7:"is_open";}i:4;a:5:{s:4:"name";s:18:"minimum_selections";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The minimum number of selections that may be made.";s:11:"phpdoc_name";s:18:"minimum_selections";}i:5;a:5:{s:4:"name";s:18:"maximum_selections";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The maximum number of selections that may be made.";s:11:"phpdoc_name";s:18:"maximum_selections";}i:6;a:5:{s:4:"name";s:14:"requires_reply";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:68:"Whether members must have a post in the topic before they made vote.";s:11:"phpdoc_name";s:14:"requires_reply";}i:7;a:5:{s:4:"name";s:7:"answers";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:41:"A list of the potential voteable answers.";s:11:"phpdoc_name";s:7:"answers";}i:8;a:7:{s:4:"name";s:6:"reason";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:"The reason for editing the poll.";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:13:"cns_edit_poll";s:11:"description";s:18:"Edit a forum poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"The ID of the topic the poll is on.";}}s:15:"cns_delete_poll";a:6:{s:8:"filename";s:29:"sources/cns_polls_action2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the poll we're deleting.";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:7:{s:4:"name";s:6:"reason";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:33:"The reason for deleting the poll.";s:11:"phpdoc_name";s:6:"reason";}i:2;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";}}s:4:"name";s:15:"cns_delete_poll";s:11:"description";s:20:"Delete a forum poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"The ID of the topic the poll is on.";}}s:16:"cns_vote_in_poll";a:5:{s:8:"filename";s:29:"sources/cns_polls_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"The ID of the poll we're voting in.";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:5:{s:4:"name";s:5:"votes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"A list of poll answers that are being voted for.";s:11:"phpdoc_name";s:5:"votes";}i:2;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:48:"The member that's voting (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:10:"topic_info";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 row of the topic the poll is for (null: get it from the DB).";s:11:"phpdoc_name";s:10:"topic_info";}}s:4:"name";s:16:"cns_vote_in_poll";s:11:"description";s:33:"Place a vote on a specified poll.";s:5:"flags";a:0:{}}s:12:"rules_script";a:5:{s:8:"filename";s:22:"sources/cns_popups.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"rules_script";s:11:"description";s:18:"Pop-up some rules.";s:5:"flags";a:0:{}}s:15:"init__cns_posts";a:5:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__cns_posts";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:21:"cns_may_post_in_topic";a:6:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:6:{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:42:"The forum ID of the forum the topic is in.";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:19:"The topic ID is in.";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:7:{s:4:"name";s:14:"last_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:69:"The last poster in the topic (null: do not check for double posting).";s:11:"phpdoc_name";s:14:"last_member_id";}i:3;a:7:{s:4:"name";s:6:"closed";s:7:"default";s:13:"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:"Whether this topic is closed.";s:11:"phpdoc_name";s:6:"closed";}i:4;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:5;a:7:{s:4:"name";s:20:"will_be_private_post";s:7:"default";s:13:"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 this post will be private.";s:11:"phpdoc_name";s:20:"will_be_private_post";}}s:4:"name";s:21:"cns_may_post_in_topic";s:11:"description";s:50:"Find whether a member may post in a certain topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:20:"cns_may_edit_post_by";a:6:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The post ID.";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:9:"post_time";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:36:"The time of the post (null: lookup).";s:11:"phpdoc_name";s:9:"post_time";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:37:"The owner of the post (null: lookup).";s:11:"phpdoc_name";s:14:"resource_owner";}i:3;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:113:"The forum the post is in (null: is a Private Topic, unless $post_time is null in which case we look this up too).";s:11:"phpdoc_name";s:8:"forum_id";}i:4;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:5;a:7:{s:4:"name";s:15:"topic_is_closed";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:182:"Whether the topic the post is in is closed (null: don't consider this, maybe we're not considering any one specific case, unless $post_time is null in which case we look this up to).";s:11:"phpdoc_name";s:15:"topic_is_closed";}i:6;a:7:{s:4:"name";s:6:"reason";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:80:"The reason for the topic being closed is put here (null: no interesting reason).";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:20:"cns_may_edit_post_by";s:11:"description";s:49:"Find whether a member may edit the detailed post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:22:"cns_may_delete_post_by";a:6:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The post ID.";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:7:{s:4:"name";s:9:"post_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:36:"The time of the post (null: lookup).";s:11:"phpdoc_name";s:9:"post_time";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:37:"The owner of the post (null: lookup).";s:11:"phpdoc_name";s:14:"resource_owner";}i:3;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:113:"The forum the post is in (null: is a Private Topic, unless $post_time is null in which case we look this up too).";s:11:"phpdoc_name";s:8:"forum_id";}i:4;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:5;a:7:{s:4:"name";s:15:"topic_is_closed";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:182:"Whether the topic the post is in is closed (null: don't consider this, maybe we're not considering any one specific case, unless $post_time is null in which case we look this up to).";s:11:"phpdoc_name";s:15:"topic_is_closed";}i:6;a:7:{s:4:"name";s:6:"reason";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:80:"The reason for the topic being closed is put here (null: no interesting reason).";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:22:"cns_may_delete_post_by";s:11:"description";s:51:"Find whether a member may delete the detailed post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:23:"cns_display_spacer_post";a:6:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"linked_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Content type.";s:11:"phpdoc_name";s:11:"linked_type";}i:1;a:5:{s:4:"name";s:9:"linked_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"Content ID.";s:11:"phpdoc_name";s:9:"linked_id";}}s:4:"name";s:23:"cns_display_spacer_post";s:11:"description";s:78:"Try and make a spacer post look nicer on Conversr than it automatically would.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:68:"A pair: better description (may be null), better post (may be null).";}}s:15:"render_post_box";a:6:{s:8:"filename";s:22:"sources/cns_posts2.php";s:10:"parameters";a:6:{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:13:"The post row.";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:14:"use_post_title";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:151:"Whether to include context (i.e. say WHAT this is, not just show the actual content). Also uses the post title, as opposed to the post's topic's title.";s:11:"phpdoc_name";s:14:"use_post_title";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to embed a link to the topic.";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:15:"render_post_box";s:11:"description";s:55:"Show a post, isolated of the other posts in it's topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The isolated post.";}}s:22:"init__cns_posts_action";a:5:{s:8:"filename";s:28:"sources/cns_posts_action.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"init__cns_posts_action";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"cns_get_post_templates";a:6:{s:8:"filename";s:28:"sources/cns_posts_action.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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:22:"cns_get_post_templates";s:11:"description";s:59:"Get a list of post templates that apply to a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"The list of applicable post templates.";}}s:14:"cns_check_post";a:6:{s:8:"filename";s:28:"sources/cns_posts_action.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:9:"LONG_TEXT";s:11:"description";s:9:"The post.";s:11:"phpdoc_name";s:4:"post";}i:1;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:97:"The ID of the topic the post would be in (null: don't check with regard to any particular topic).";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:7:{s:4:"name";s:6:"poster";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:34:"The poster (null: current member).";s:11:"phpdoc_name";s:6:"poster";}}s:4:"name";s:14:"cns_check_post";s:11:"description";s:28:"Check a post would be valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:111:"Row of the existing post if a double post (single row map-element in a list of rows) (null: not a double post).";}}s:13:"cns_make_post";a:6:{s:8:"filename";s:28:"sources/cns_posts_action.php";s:10:"parameters";a:27:{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:39:"The ID of the topic to add the post to.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:37:"The title of the post (may be blank).";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The post.";s:11:"phpdoc_name";s:4:"post";}i:3;a:7:{s:4:"name";s:8:"skip_sig";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 to skip showing the posters signature in the post.";s:11:"phpdoc_name";s:8:"skip_sig";}i:4;a:7:{s:4:"name";s:10:"is_starter";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:63:"Whether the post is the first in the topic (null: work it out).";s:11:"phpdoc_name";s:10:"is_starter";}i:5;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:104:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially).";s:11:"phpdoc_name";s:9:"validated";}i:6;a:7:{s:4:"name";s:13:"is_emphasised";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:38:"Whether the post is marked emphasised.";s:11:"phpdoc_name";s:13:"is_emphasised";}i:7;a:7:{s:4:"name";s:20:"poster_name_if_guest";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:74:"The name of the person making the post (null: username of current member).";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:8;a:7:{s:4:"name";s:10:"ip_address";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:71:"The IP address the post is to be made under (null: IP of current user).";s:11:"phpdoc_name";s:10:"ip_address";}i:9;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:33:"The time of the post (null: now).";s:11:"phpdoc_name";s:4:"time";}i:10;a:7:{s:4:"name";s:6:"poster";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:34:"The poster (null: current member).";s:11:"phpdoc_name";s:6:"poster";}i:11;a:7:{s:4:"name";s:19:"intended_solely_for";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:64:"The member that this post is intended solely for (null: public).";s:11:"phpdoc_name";s:19:"intended_solely_for";}i:12;a:7:{s:4:"name";s:14:"last_edit_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:52:"The last edit time of the post (null: never edited).";s:11:"phpdoc_name";s:14:"last_edit_time";}i:13;a:7:{s:4:"name";s:12:"last_edit_by";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:63:"The member that was last to edit the post (null: never edited).";s:11:"phpdoc_name";s:12:"last_edit_by";}i:14;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:77:"Whether to check permissions for whether the post may be made as it is given.";s:11:"phpdoc_name";s:17:"check_permissions";}i:15;a:7:{s:4:"name";s:14:"update_caching";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to update the caches after making the post.";s:11:"phpdoc_name";s:14:"update_caching";}i:16;a:7:{s:4:"name";s:8:"forum_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:59:"The forum the post will be in (null: find out from the DB).";s:11:"phpdoc_name";s:8:"forum_id";}i:17;a:7:{s:4:"name";s:19:"support_attachments";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to allow attachments in this post.";s:11:"phpdoc_name";s:19:"support_attachments";}i:18;a:7:{s:4:"name";s:11:"topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:48:"The title of the topic (null: find from the DB).";s:11:"phpdoc_name";s:11:"topic_title";}i:19;a:7:{s:4:"name";s:4:"sunk";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:34:"Whether the topic is a sunk topic.";s:11:"phpdoc_name";s:4:"sunk";}i:20;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:21;a:7:{s:4:"name";s:9:"anonymous";s:7:"default";s:13:"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 make the post anonymous";s:11:"phpdoc_name";s:9:"anonymous";}i:22;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:23;a:7:{s:4:"name";s:5:"is_pt";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:59:"Whether this is for a new Private Topic (null: work it out)";s:11:"phpdoc_name";s:5:"is_pt";}i:24;a:7:{s:4:"name";s:23:"insert_comcode_as_admin";s:7:"default";s:13:"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 explicitly insert the Comcode with admin privileges";s:11:"phpdoc_name";s:23:"insert_comcode_as_admin";}i:25;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:51:"Parent post ID (null: none-threaded/root-of-thread)";s:11:"phpdoc_name";s:9:"parent_id";}i:26;a:7:{s:4:"name";s:17:"send_notification";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to send out notifications";s:11:"phpdoc_name";s:17:"send_notification";}}s:4:"name";s:13:"cns_make_post";s:11:"description";s:11:"Add a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:23:"The ID of the new post.";}}s:34:"cns_force_update_member_post_count";a:5:{s:8:"filename";s:28:"sources/cns_posts_action.php";s:10:"parameters";a:2:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:21:"member_post_count_dif";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:77:"The amount to add to the post count (null: fully recalculate the post count).";s:11:"phpdoc_name";s:21:"member_post_count_dif";}}s:4:"name";s:34:"cns_force_update_member_post_count";s:11:"description";s:46:"Force a members post count to be recalculated.";s:5:"flags";a:0:{}}s:22:"cns_decache_cms_blocks";a:5:{s:8:"filename";s:28:"sources/cns_posts_action.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"updated_forum_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:20:"The ID of the forum.";s:11:"phpdoc_name";s:16:"updated_forum_id";}i:1;a:7:{s:4:"name";s:10:"forum_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:50:"The name of the forum (null: find it from the DB).";s:11:"phpdoc_name";s:10:"forum_name";}i:2;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:42:"The member (null: do no member decaching).";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:22:"cns_decache_cms_blocks";s:11:"description";s:95:"Decache cached Conversr elements depending on a certain forum, and optionally a certain member.";s:5:"flags";a:0:{}}s:34:"cns_get_safe_specified_poster_name";a:6:{s:8:"filename";s:29:"sources/cns_posts_action2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"is_required_field";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:81:"If it is a required field (null: typically no, but look at hidden option for it).";s:11:"phpdoc_name";s:17:"is_required_field";}}s:4:"name";s:34:"cns_get_safe_specified_poster_name";s:11:"description";s:68:"Get the poster name a Guest may have specified, after sanitising it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Poster name.";}}s:27:"cns_member_handle_promotion";a:5:{s:8:"filename";s:29:"sources/cns_posts_action2.php";s:10:"parameters";a:1:{i:0;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:27:"cns_member_handle_promotion";s:11:"description";s:59:"Check to see if a member deserves promotion, and handle it.";s:5:"flags";a:0:{}}s:27:"cns_send_topic_notification";a:5:{s:8:"filename";s:29:"sources/cns_posts_action2.php";s:10:"parameters";a:12:{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:29:"The URL to view the new post.";s:11:"phpdoc_name";s:3:"url";}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:39:"The ID of the topic that got posted in.";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:60:"The forum that the topic is in (null: find out from the DB).";s:11:"phpdoc_name";s:8:"forum_id";}i:3;a:5:{s:4:"name";s:16:"sender_member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:68:"The member that made the post triggering this tracking notification.";s:11:"phpdoc_name";s:16:"sender_member_id";}i:4;a:5:{s:4:"name";s:10:"is_starter";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the post started a new topic.";s:11:"phpdoc_name";s:10:"is_starter";}i:5;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:28:"The post, in Comcode format.";s:11:"phpdoc_name";s:4:"post";}i:6;a:5:{s:4:"name";s:11:"topic_title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:152:"The topic title (blank: look it up from the $topic_id). If non-blank we must use it as it is implying the database might not have the correct value yet.";s:11:"phpdoc_name";s:11:"topic_title";}i:7;a:7:{s:4:"name";s:9:"_limit_to";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:64:"Only send the notification to this member (null: no such limit).";s:11:"phpdoc_name";s:9:"_limit_to";}i:8;a:7:{s:4:"name";s:5:"is_pt";s:7:"default";s:13:"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 this is for a Private Topic.";s:11:"phpdoc_name";s:5:"is_pt";}i:9;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:10;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:11;a:7:{s:4:"name";s:11:"poster_name";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 name of the poster (null: default for $sender_member_id)";s:11:"phpdoc_name";s:11:"poster_name";}}s:4:"name";s:27:"cns_send_topic_notification";s:11:"description";s:56:"Send out a notification, as a topic just got a new post.";s:5:"flags";a:0:{}}s:30:"cns_force_update_topic_caching";a:5:{s:8:"filename";s:29:"sources/cns_posts_action2.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:9:"AUTO_LINK";s:11:"description";s:41:"The ID of the topic to update caching of.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:14:"post_count_dif";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:133:"The post count difference we know the topic has undergone (null: we'll need to work out from scratch how many posts are in the topic)";s:11:"phpdoc_name";s:14:"post_count_dif";}i:2;a:7:{s:4:"name";s:4:"last";s:7:"default";s:12:"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 this is the latest post in the topic.";s:11:"phpdoc_name";s:4:"last";}i:3;a:7:{s:4:"name";s:5:"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:44:"Whether this is the first post in the topic.";s:11:"phpdoc_name";s:5:"first";}i:4;a:7:{s:4:"name";s:12:"last_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:53:"The ID of the last post in the topic (null: unknown).";s:11:"phpdoc_name";s:12:"last_post_id";}i:5;a:7:{s:4:"name";s:9:"last_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:55:"The time of the last post in the topic (null: unknown).";s:11:"phpdoc_name";s:9:"last_time";}i:6;a:7:{s:4:"name";s:10:"last_title";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:56:"The title of the last post in the topic (null: unknown).";s:11:"phpdoc_name";s:10:"last_title";}i:7;a:7:{s:4:"name";s:9:"last_post";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:71:"The ID of the last posts language string for the topic (null: unknown).";s:11:"phpdoc_name";s:9:"last_post";}i:8;a:7:{s:4:"name";s:13:"last_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:55:"The last username to post in the topic (null: unknown).";s:11:"phpdoc_name";s:13:"last_username";}i:9;a:7:{s:4:"name";s:14:"last_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:63:"The ID of the last member to post in the topic (null: unknown).";s:11:"phpdoc_name";s:14:"last_member_id";}}s:4:"name";s:30:"cns_force_update_topic_caching";s:11:"description";s:25:"Update a topic's caching.";s:5:"flags";a:0:{}}s:30:"cns_force_update_forum_caching";a:5:{s:8:"filename";s:29:"sources/cns_posts_action2.php";s:10:"parameters";a:9:{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:52:"The ID of the forum to update the cached details of.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:7:{s:4:"name";s:20:"num_topics_increment";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:86:"How much to increment the topic count by (null: It has to be completely recalculated).";s:11:"phpdoc_name";s:20:"num_topics_increment";}i:2;a:7:{s:4:"name";s:19:"num_posts_increment";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:85:"How much to increment the post count by (null: It has to be completely recalculated).";s:11:"phpdoc_name";s:19:"num_posts_increment";}i:3;a:7:{s:4:"name";s:13:"last_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:71:"The ID of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:13:"last_topic_id";}i:4;a:7:{s:4:"name";s:10:"last_title";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:74:"The title of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:10:"last_title";}i:5;a:7:{s:4:"name";s:9:"last_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:83:"The last post time of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:9:"last_time";}i:6;a:7:{s:4:"name";s:13:"last_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:87:"The last post username of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:13:"last_username";}i:7;a:7:{s:4:"name";s:14:"last_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:85:"The last post member of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:14:"last_member_id";}i:8;a:7:{s:4:"name";s:13:"last_forum_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:185:"The forum the last post was in (note this makes sense, because there may be subforums under this forum that we have to take into account). (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:13:"last_forum_id";}}s:4:"name";s:30:"cns_force_update_forum_caching";s:11:"description";s:31:"Update a forums cached details.";s:5:"flags";a:0:{}}s:17:"cns_validate_post";a:6:{s:8:"filename";s:29:"sources/cns_posts_action3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"The ID of the post.";s:11:"phpdoc_name";s:7:"post_id";}i:1;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:72:"The ID of the topic that contains the post (null: find out from the DB).";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:7:{s:4:"name";s:8:"forum_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:80:"The forum that the topic containing the post is in (null: find out from the DB).";s:11:"phpdoc_name";s:8:"forum_id";}i:3;a:7:{s:4:"name";s:6:"poster";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:75:"The member that made the post being validated (null: find out from the DB).";s:11:"phpdoc_name";s:6:"poster";}i:4;a:7:{s:4:"name";s:4:"post";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:63:"The post, in Comcode format (null: It'll have to be looked-up).";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:17:"cns_validate_post";s:11:"description";s:16:"Validate a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:170:"The ID of the topic (while this could be known without calling this function, as we've gone to effort and grabbed it from the DB, it might turn out useful for something).";}}s:13:"cns_edit_post";a:6:{s:8:"filename";s:29:"sources/cns_posts_action3.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:38:"The ID of the post that we're editing.";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:66:"Whether the post is validated (null: decide based on permissions).";s:11:"phpdoc_name";s:9:"validated";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:37:"The title of the post (may be blank).";s:11:"phpdoc_name";s:5:"title";}i:3;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The post.";s:11:"phpdoc_name";s:4:"post";}i:4;a:5:{s:4:"name";s:8:"skip_sig";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:58:"Whether to skip showing the posters signature in the post.";s:11:"phpdoc_name";s:8:"skip_sig";}i:5;a:5:{s:4:"name";s:13:"is_emphasised";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:38:"Whether the post is marked emphasised.";s:11:"phpdoc_name";s:13:"is_emphasised";}i:6;a:5:{s:4:"name";s:19:"intended_solely_for";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:62:"The member that this post is intended solely for (null: none).";s:11:"phpdoc_name";s:19:"intended_solely_for";}i:7;a:5:{s:4:"name";s:14:"show_as_edited";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to show the post as edited.";s:11:"phpdoc_name";s:14:"show_as_edited";}i:8;a:5:{s:4:"name";s:14:"mark_as_unread";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to mark the topic as unread by those previous having read this post.";s:11:"phpdoc_name";s:14:"mark_as_unread";}i:9;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"The reason for this action.";s:11:"phpdoc_name";s:6:"reason";}i:10;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:11;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:12;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:13;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:14;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}i:15;a:7:{s:4:"name";s:10:"run_checks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Whether to run checks";s:11:"phpdoc_name";s:10:"run_checks";}i:16;a:7:{s:4:"name";s:20:"poster_name_if_guest";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:57:"The name of the person making the post (null: no change).";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}}s:4:"name";s:13:"cns_edit_post";s:11:"description";s:12:"Edit a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:170:"The ID of the topic (while this could be known without calling this function, as we've gone to effort and grabbed it from the DB, it might turn out useful for something).";}}s:22:"cns_delete_posts_topic";a:6:{s:8:"filename";s:29:"sources/cns_posts_action3.php";s:10:"parameters";a:5:{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:46:"The ID of the topic we're deleting posts from.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:26:"A list of posts to delete.";s:11:"phpdoc_name";s:5:"posts";}i:2;a:7:{s:4:"name";s:6:"reason";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:27:"The reason for this action.";s:11:"phpdoc_name";s:6:"reason";}i:3;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:4;a:7:{s:4:"name";s:7:"cleanup";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:79:"Whether to do a cleanup: delete the topic if there will be no posts left in it.";s:11:"phpdoc_name";s:7:"cleanup";}}s:4:"name";s:22:"cns_delete_posts_topic";s:11:"description";s:26:"Delete posts from a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether the topic was deleted, due to all posts in said topic being deleted.";}}s:14:"cns_move_posts";a:6:{s:8:"filename";s:29:"sources/cns_posts_action3.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:13:"from_topic_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:27:"The ID of the source topic.";s:11:"phpdoc_name";s:13:"from_topic_id";}i:1;a:5:{s:4:"name";s:11:"to_topic_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:71:"The ID of the destination topic (null: move to new topic in $forum_id).";s:11:"phpdoc_name";s:11:"to_topic_id";}i:2;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"A list of post IDs to move.";s:11:"phpdoc_name";s:5:"posts";}i:3;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"The reason for this action.";s:11:"phpdoc_name";s:6:"reason";}i:4;a:7:{s:4:"name";s:11:"to_forum_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:59:"The forum the destination topic is in (null: find from DB).";s:11:"phpdoc_name";s:11:"to_forum_id";}i:5;a:7:{s:4:"name";s:15:"delete_if_empty";s:7:"default";s:13:"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 delete the topic if all posts in it have been moved.";s:11:"phpdoc_name";s:15:"delete_if_empty";}i:6;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:11:"?SHORT_TEXT";s:11:"description";s:58:"The title for the new topic (null: work out / irrelevant).";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:14:"cns_move_posts";s:11:"description";s:37:"Move posts from one topic to another.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether the topic was deleted.";}}s:21:"render_profile_tabset";a:6:{s:8:"filename";s:24:"sources/cns_profiles.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:12:"Screen title";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:2;a:7:{s:4:"name";s:17:"member_id_viewing";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:68:"The ID of the member who is doing the viewing (null: current member)";s:11:"phpdoc_name";s:17:"member_id_viewing";}i:3;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:8:"?ID_TEXT";s:11:"description";s:81:"The username of the member who is being viewed (null: work out from member_id_of)";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:21:"render_profile_tabset";s:11:"description";s:24:"Render a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:20:"The rendered profile";}}s:16:"render_topic_box";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:6:{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:9:"Topic row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_topic_box";s:11:"description";s:19:"Render a topic box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The topic box";}}s:19:"cns_get_topic_where";a:6:{s:8:"filename";s:22:"sources/cns_topics.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:46:"The ID of the topic we are getting details of.";s:11:"phpdoc_name";s:8:"topic_id";}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:51:"The member doing the lookup (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:19:"cns_get_topic_where";s:11:"description";s:51:"Get an SQL 'WHERE' clause for the posts in a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The WHERE clause.";}}s:26:"cns_may_make_private_topic";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:1:{i:0;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:26:"cns_may_make_private_topic";s:11:"description";s:47:"Find whether a member may make a Private Topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:28:"cns_check_make_private_topic";a:5:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"cns_check_make_private_topic";s:11:"description";s:45:"Check that a member may make a Private Topic.";s:5:"flags";a:0:{}}s:18:"cns_may_post_topic";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:2:{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:32:"The forum the topic would be in.";s:11:"phpdoc_name";s:8:"forum_id";}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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:18:"cns_may_post_topic";s:11:"description";s:58:"Find whether a member may post a topic in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:19:"cns_may_report_post";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:1:{i:0;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:19:"cns_may_report_post";s:11:"description";s:40:"Find whether a member may report a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:21:"cns_has_replied_topic";a:6:{s:8:"filename";s:22:"sources/cns_topics.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:10:"The topic.";s:11:"phpdoc_name";s:8:"topic_id";}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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:21:"cns_has_replied_topic";s:11:"description";s:53:"Find whether a member has replied to a certain topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:22:"cns_may_edit_topics_by";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:3:{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:32:"The forum the topic would be in.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:31:"The member checking access for.";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:34:"The member that owns this resource";s:11:"phpdoc_name";s:14:"resource_owner";}}s:4:"name";s:22:"cns_may_edit_topics_by";s:11:"description";s:57:"Find whether a member may edit topics in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:24:"cns_may_delete_topics_by";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:3:{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:32:"The forum the topic would be in.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:31:"The member checking access for.";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:34:"The member that owns this resource";s:11:"phpdoc_name";s:14:"resource_owner";}}s:4:"name";s:24:"cns_may_delete_topics_by";s:11:"description";s:59:"Find whether a member may delete topics in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:19:"cns_ping_topic_read";a:5:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:3:{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:36:"The ID of the topic to mark as read.";s:11:"phpdoc_name";s:8:"topic_id";}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:49:"The member to do this for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:9:"timestamp";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:32:"Mark read timestamp (null: now).";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:19:"cns_ping_topic_read";s:11:"description";s:43:"Mark a topic as read by the current member.";s:5:"flags";a:0:{}}s:18:"cns_has_read_topic";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:4:{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:20:"The ID of the topic.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:15:"topic_last_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:66:"The time of the last post in the topic (null: get it from the DB).";s:11:"phpdoc_name";s:15:"topic_last_time";}i:2;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:16:"member_last_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:69:"The time the member last viewed the topic (null: get it from the DB).";s:11:"phpdoc_name";s:16:"member_last_time";}}s:4:"name";s:18:"cns_has_read_topic";s:11:"description";s:110:"Find whether a member has read a certain topic, such that they have possibly read all posts within it already.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:31:"They have read it as such, yes.";}}s:25:"cns_has_special_pt_access";a:6:{s:8:"filename";s:22:"sources/cns_topics.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:20:"The ID of the topic.";s:11:"phpdoc_name";s:8:"topic_id";}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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:25:"cns_has_special_pt_access";s:11:"description";s:57:"Find whether a member has special access to a certain PT.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether they have special access.";}}s:14:"cns_make_topic";a:6:{s:8:"filename";s:29:"sources/cns_topics_action.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:63:"The ID of the forum the topic will be in (null: Private Topic).";s:11:"phpdoc_name";s:8:"forum_id";}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:10:"SHORT_TEXT";s:11:"description";s:25:"Description of the topic.";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:8:"emoticon";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:51:"The theme image code of the emoticon for the topic.";s:11:"phpdoc_name";s:8:"emoticon";}i:3;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:67:"Whether the topic is validated (null: detect whether it should be).";s:11:"phpdoc_name";s:9:"validated";}i:4;a:7:{s:4:"name";s:4:"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:26:"Whether the topic is open.";s:11:"phpdoc_name";s:4:"open";}i:5;a:7:{s:4:"name";s:6:"pinned";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:28:"Whether the topic is pinned.";s:11:"phpdoc_name";s:6:"pinned";}i:6;a:7:{s:4:"name";s:4:"sunk";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:26:"Whether the topic is sunk.";s:11:"phpdoc_name";s:4:"sunk";}i:7;a:7:{s:4:"name";s:9:"cascading";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:31:"Whether the topic is cascading.";s:11:"phpdoc_name";s:9:"cascading";}i:8;a:7:{s:4:"name";s:7:"pt_from";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:71:"If it is a Private Topic, who is it 'from' (null: not a Private Topic).";s:11:"phpdoc_name";s:7:"pt_from";}i:9;a:7:{s:4:"name";s:5:"pt_to";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:69:"If it is a Private Topic, who is it 'to' (null: not a Private Topic).";s:11:"phpdoc_name";s:5:"pt_to";}i:10;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:73:"Whether to check the poster has permissions for the given topic settings.";s:11:"phpdoc_name";s:11:"check_perms";}i:11;a:7:{s:4:"name";s:9:"num_views";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:46:"The number of times the topic has been viewed.";s:11:"phpdoc_name";s:9:"num_views";}i:12;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:13;a:7:{s:4:"name";s:16:"description_link";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:55:"Link related to the topic (e.g. link to view a ticket).";s:11:"phpdoc_name";s:16:"description_link";}}s:4:"name";s:14:"cns_make_topic";s:11:"description";s:135:"Add a topic.This does not create the first post, you need to do an cns_make_post call for that. Conversr allows topics with zero posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the newly created topic.";}}s:14:"cns_edit_topic";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:50:"The ID of the topic to edit (null: Private Topic).";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:11:"description";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:47:"Description of the topic (null: do not change).";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:8:"emoticon";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:67:"The image code of the emoticon for the topic (null: do not change).";s:11:"phpdoc_name";s:8:"emoticon";}i:3;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:53:"Whether the topic is validated (null: do not change).";s:11:"phpdoc_name";s:9:"validated";}i:4;a:7:{s:4:"name";s:4:"open";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:48:"Whether the topic is open (null: do not change).";s:11:"phpdoc_name";s:4:"open";}i:5;a:7:{s:4:"name";s:6:"pinned";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:50:"Whether the topic is pinned (null: do not change).";s:11:"phpdoc_name";s:6:"pinned";}i:6;a:7:{s:4:"name";s:4:"sunk";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:48:"Whether the topic is sunk (null: do not change).";s:11:"phpdoc_name";s:4:"sunk";}i:7;a:7:{s:4:"name";s:9:"cascading";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:"Whether the topic is cascading (null: do not change).";s:11:"phpdoc_name";s:9:"cascading";}i:8;a:7:{s:4:"name";s:6:"reason";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:27:"The reason for this action.";s:11:"phpdoc_name";s:6:"reason";}i:9;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:7:"?string";s:11:"description";s:46:"New title for the topic (null: do not change).";s:11:"phpdoc_name";s:5:"title";}i:10;a:7:{s:4:"name";s:16:"description_link";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:77:"Link related to the topic (e.g. link to view a ticket) (null: do not change).";s:11:"phpdoc_name";s:16:"description_link";}i:11;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:12;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:13;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:14:"cns_edit_topic";s:11:"description";s:13:"Edit a topic.";s:5:"flags";a:0:{}}s:16:"cns_delete_topic";a:6:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:4:{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:30:"The ID of the topic to delete.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:6:"reason";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 reason for this action .";s:11:"phpdoc_name";s:6:"reason";}i:2;a:7:{s:4:"name";s:20:"post_target_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:68:"Where topic to move posts in this topic to (null: delete the posts).";s:11:"phpdoc_name";s:20:"post_target_topic_id";}i:3;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";}}s:4:"name";s:16:"cns_delete_topic";s:11:"description";s:15:"Delete a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:123:"The forum ID the topic is in (could be found without calling the function, but as we've looked it up, it is worth keeping).";}}s:15:"cns_move_topics";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:38:"The forum the topics are currently in.";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:9:"AUTO_LINK";s:11:"description";s:40:"The forum the topics are being moved to.";s:11:"phpdoc_name";s:2:"to";}i:2;a:7:{s:4:"name";s:6:"topics";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:74:"A list of the topic IDs to move (null: move all topics from source forum).";s:11:"phpdoc_name";s:6:"topics";}i:3;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";}}s:4:"name";s:15:"cns_move_topics";s:11:"description";s:17:"Move some topics.";s:5:"flags";a:0:{}}s:16:"cns_invite_to_pt";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:2:{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:21:"Member getting access";s:11:"phpdoc_name";s:9:"member_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:9:"The topic";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:16:"cns_invite_to_pt";s:11:"description";s:24:"Invite a member to a PT.";s:5:"flags";a:0:{}}s:20:"send_pt_notification";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:23:"The ID of the post made";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"PT title";s:11:"phpdoc_name";s:7:"subject";}i:2;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:15:"ID of the topic";s:11:"phpdoc_name";s:8:"topic_id";}i:3;a:5:{s:4:"name";s:5:"to_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:21:"Member getting the PT";s:11:"phpdoc_name";s:5:"to_id";}i:4;a:7:{s:4:"name";s:7:"from_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:44:"Member posting the PT (null: current member)";s:11:"phpdoc_name";s:7:"from_id";}i:5;a:7:{s:4:"name";s:12:"post_comcode";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:47:"Post text (null: unknown, lookup from $post_id)";s:11:"phpdoc_name";s:12:"post_comcode";}i:6;a:7:{s:4:"name";s:11:"mark_unread";s:7:"default";s:13:"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 also mark the topic as unread";s:11:"phpdoc_name";s:11:"mark_unread";}}s:4:"name";s:20:"send_pt_notification";s:11:"description";s:27:"Send a new-PT notification.";s:5:"flags";a:0:{}}s:25:"handle_topic_ticket_reply";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.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:8:"Forum ID";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:8:"Topic ID";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:10:"SHORT_TEXT";s:11:"description";s:11:"Topic title";s:11:"phpdoc_name";s:11:"topic_title";}i:3;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"Post made";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:25:"handle_topic_ticket_reply";s:11:"description";s:45:"If necessary, send out a support ticket reply";s:5:"flags";a:0:{}}s:16:"find_post_id_url";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The post ID.";s:11:"phpdoc_name";s:7:"post_id";}}s:4:"name";s:16:"find_post_id_url";s:11:"description";s:23:"Find the URL to a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:8:"The URL.";}}s:21:"find_first_unread_url";a:6:{s:8:"filename";s:25:"sources/cns_topicview.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 topic ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:21:"find_first_unread_url";s:11:"description";s:50:"Find the URL to the latest unread post in a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:8:"The URL.";}}s:28:"cns_get_details_to_show_post";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"_postdetails";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The post row.";s:11:"phpdoc_name";s:12:"_postdetails";}i:1;a:5:{s:4:"name";s:10:"topic_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The topic row.";s:11:"phpdoc_name";s:10:"topic_info";}i:2;a:7:{s:4:"name";s:9:"only_post";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the post is the only post in the topic.";s:11:"phpdoc_name";s:9:"only_post";}}s:4:"name";s:28:"cns_get_details_to_show_post";s:11:"description";s:113:"Turn a post row, into a detailed map of information that is suitable for use as display parameters for that post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The detailed map.";}}s:17:"cns_read_in_topic";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:63:"The ID of the topic we are getting details of (null: whispers).";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:110:"The start row for getting details of posts in the topic (i.e. 0 is start of topic, higher is further through).";s:11:"phpdoc_name";s:5:"start";}i:2;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:45:"The maximum number of posts to get detail of.";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:17:"view_poll_results";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:106:"Whether we are viewing poll results for the topic (if there is no poll for the topic, this is irrelevant).";s:11:"phpdoc_name";s:17:"view_poll_results";}i:4;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";}}s:4:"name";s:17:"cns_read_in_topic";s:11:"description";s:55:"Read in a great big map of details relating to a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The map of details.";}}s:24:"cns_cache_member_details";a:5:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"members";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"List of members.";s:11:"phpdoc_name";s:7:"members";}}s:4:"name";s:24:"cns_cache_member_details";s:11:"description";s:95:"Mass-load details for a list of members into memory, to reduce queries when we access it later.";s:5:"flags";a:0:{}}s:23:"cns_render_post_buttons";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"topic_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"Map of topic info.";s:11:"phpdoc_name";s:10:"topic_info";}i:1;a:5:{s:4:"name";s:12:"_postdetails";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Map of post info.";s:11:"phpdoc_name";s:12:"_postdetails";}i:2;a:5:{s:4:"name";s:9:"may_reply";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the current member may reply to the topic";s:11:"phpdoc_name";s:9:"may_reply";}i:3;a:7:{s:4:"name";s:17:"rendering_context";s:7:"default";s:3:"cns";s:11:"default_raw";s:5:"'cns'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Rendering context";s:11:"phpdoc_name";s:17:"rendering_context";}}s:4:"name";s:23:"cns_render_post_buttons";s:11:"description";s:37:"Get buttons for showing under a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The buttons.";}}s:21:"cns_get_post_emphasis";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"_postdetails";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Map of post info.";s:11:"phpdoc_name";s:12:"_postdetails";}}s:4:"name";s:21:"cns_get_post_emphasis";s:11:"description";s:27:"Get post emphasis Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The Tempcode.";}}s:13:"init__comcode";a:5:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__comcode";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"init_valid_comcode_tags";a:5:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"init_valid_comcode_tags";s:11:"description";s:100:"Set up the VALID_COMCODE_TAGS global. It uses a bit of memory, so for performance we do it on-demand";s:5:"flags";a:0:{}}s:31:"init_potential_js_naughty_array";a:5:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"init_potential_js_naughty_array";s:11:"description";s:108:"Set up the POTENTIAL_JS_NAUGHTY_ARRAY global. It uses a bit of memory, so for performance we do it on-demand";s:5:"flags";a:0:{}}s:14:"comcode_escape";a:6:{s:8:"filename";s:19:"sources/comcode.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:8:"Raw text";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:14:"comcode_escape";s:11:"description";s:47:"Make text usable inside a string inside Comcode";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Escaped text";}}s:15:"html_to_comcode";a:6:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:24:"The HTML to be converted";s:11:"phpdoc_name";s:4:"html";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether to force full conversion regardless of settings";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:15:"html_to_comcode";s:11:"description";s:28:"Convert (X)HTML into Comcode";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The equivalent Comcode";}}s:15:"apply_emoticons";a:6:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:61:"The text to add emoticons to (assumption: that this is XHTML)";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:15:"apply_emoticons";s:11:"description";s:325:"Get the text with all the emoticon codes replaced with the correct XHTML. Emoticons are determined by your forum system.This is not used in the normal Comcode chain - it's for non-Comcode things that require emoticons (actually in reality it is used in the Comcode chain if the optimiser sees that a full parse is not needed)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:50:"The XHTML with the image-substitution of emoticons";}}s:19:"comcode_to_tempcode";a:6:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The Comcode to convert";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:7:{s:4:"name";s:13:"source_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:194:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:304:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one. Note that if this is passed false, and $source_member is an admin, it will be parsed using admin privileges anyway.";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:7:{s:4:"name";s:8:"wrap_pos";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:"The position to conduct wordwrapping at (null: do not conduct word-wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:4;a:7:{s:4:"name";s:7:"pass_id";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:260:"A special identifier that can identify this resource in a sea of our resources of this class; usually this can be ignored, but may be used to provide a binding between JavaScript in evaluated Comcode, and the surrounding environment (null: no explicit binding)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:6;a:7:{s:4:"name";s:14:"semiparse_mode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:199:"Whether to parse so as to create something that would fit inside a semihtml tag. It means we generate HTML, with Comcode written into it where the tag could never be reverse-converted (e.g. a block).";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:7;a:7:{s:4:"name";s:13:"preparse_mode";s:7:"default";s:13:"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 this is being pre-parsed, to pick up errors before row insertion.";s:11:"phpdoc_name";s:13:"preparse_mode";}i:8;a:7:{s:4:"name";s:15:"is_all_semihtml";s:7:"default";s:13:"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 treat this whole thing as being wrapped in semihtml, but apply normal security otherwise.";s:11:"phpdoc_name";s:15:"is_all_semihtml";}i:9;a:7:{s:4:"name";s:15:"structure_sweep";s:7:"default";s:13:"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 we are only doing this parse to find the title structure";s:11:"phpdoc_name";s:15:"structure_sweep";}i:10;a:7:{s:4:"name";s:10:"check_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:117:"Whether to only check the Comcode. It's best to use the check_comcode function which will in turn use this parameter.";s:11:"phpdoc_name";s:10:"check_only";}i:11;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:12;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}}s:4:"name";s:19:"comcode_to_tempcode";s:11:"description";s:326:"Convert the specified Comcode (unknown format) into a Tempcode tree. You shouldn't output the Tempcode tree to the browser, as it looks really horrible. If you are in a rare case where you need to output directly (not through templates), you should call the evaluate method on the Tempcode object, to convert it into a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The Tempcode generated";}}s:13:"strip_comcode";a:6:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Plain-text/Comcode";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:11:"for_extract";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether this is for generating an extract that does not need to be fully comprehended (i.e. favour brevity)";s:11:"phpdoc_name";s:11:"for_extract";}i:2;a:7:{s:4:"name";s:16:"tags_to_preserve";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:37:"List of tags to preserve (null: none)";s:11:"phpdoc_name";s:16:"tags_to_preserve";}}s:4:"name";s:13:"strip_comcode";s:11:"description";s:140:"Strip out any Comcode from this "plain text". Useful for semantic text is wanted but where Comcode is used as "the next best thing" we have.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"Purified plain-text";}}s:25:"_get_details_comcode_tags";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"_get_details_comcode_tags";s:11:"description";s:47:"Get some metadata of what Comcode tags we have.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: core tags (map to tag parameters), custom tags (map to Custom Comcode row).";}}s:15:"_get_group_tags";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"group";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:"Group Name (null: return a specific group)";s:11:"phpdoc_name";s:5:"group";}}s:4:"name";s:15:"_get_group_tags";s:11:"description";s:30:"Get the Comcode tags in groups";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:50:"Returns each Group name as key, values as its tags";}}s:21:"_get_non_wysiwyg_tags";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_non_wysiwyg_tags";s:11:"description";s:92:"Get the non-WYSIWYG tags (ones the WYSIWYG cannot do itself, so are needed even if it is on)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"List of non-WYSIWYG tags";}}s:21:"comcode_helper_script";a:5:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"comcode_helper_script";s:11:"description";s:36:"Outputs a Comcode tag helper dialog.";s:5:"flags";a:0:{}}s:29:"comcode_helper_script_replace";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"comcode_helper_script_replace";s:11:"description";s:47:"Render a step of the Comcode tag helper dialog.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The step UI.";}}s:27:"comcode_helper_script_step1";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"comcode_helper_script_step1";s:11:"description";s:47:"Render a step of the Comcode tag helper dialog.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The step UI.";}}s:27:"comcode_helper_script_step2";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"comcode_helper_script_step2";s:11:"description";s:47:"Render a step of the Comcode tag helper dialog.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The step UI.";}}s:32:"_find_comcode_tag_embed_required";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:32:"_find_comcode_tag_embed_required";s:11:"description";s:57:"Find if a Comcode tag has required contents (hard-coded).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether it has required contents.";}}s:42:"_try_for_special_comcode_tag_all_params_ui";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"UI fields.";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:15:"fields_advanced";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Advanced UI fields.";s:11:"phpdoc_name";s:15:"fields_advanced";}i:4;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Hidden fields.";s:11:"phpdoc_name";s:6:"hidden";}i:5;a:5:{s:4:"name";s:17:"done_tag_contents";s:3:"ref";b:1;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether the tag contents input has also been handled here.";s:11:"phpdoc_name";s:17:"done_tag_contents";}i:6;a:5:{s:4:"name";s:8:"defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Default parameter values.";s:11:"phpdoc_name";s:8:"defaults";}i:7;a:5:{s:4:"name";s:6:"params";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"List of tag parameters.";s:11:"phpdoc_name";s:6:"params";}i:8;a:5:{s:4:"name";s:10:"javascript";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:21:"JavaScript to deploy.";s:11:"phpdoc_name";s:10:"javascript";}i:9;a:5:{s:4:"name";s:7:"preview";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether previewing will be allowed.";s:11:"phpdoc_name";s:7:"preview";}}s:4:"name";s:42:"_try_for_special_comcode_tag_all_params_ui";s:11:"description";s:69:"See if we have specialisation code for a Comcode tag parameter input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether we did render specialisation code (if not, standard code will be deployed by the calling function).";}}s:46:"_try_for_special_comcode_tag_specific_param_ui";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The parameter.";s:11:"phpdoc_name";s:5:"param";}i:3;a:5:{s:4:"name";s:14:"parameter_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:45:"Default human-readable name of the parameter.";s:11:"phpdoc_name";s:14:"parameter_name";}i:4;a:5:{s:4:"name";s:12:"descriptiont";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Default description of the parameter.";s:11:"phpdoc_name";s:12:"descriptiont";}i:5;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"UI fields.";s:11:"phpdoc_name";s:6:"fields";}i:6;a:5:{s:4:"name";s:15:"fields_advanced";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Advanced UI fields.";s:11:"phpdoc_name";s:15:"fields_advanced";}i:7;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Hidden fields.";s:11:"phpdoc_name";s:6:"hidden";}i:8;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Default parameter value.";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:46:"_try_for_special_comcode_tag_specific_param_ui";s:11:"description";s:69:"See if we have specialisation code for a Comcode tag parameter input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether we did render specialisation code (if not, standard code will be deployed by the calling function).";}}s:27:"_get_comcode_tag_param_name";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:1;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Parameter name.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:27:"_get_comcode_tag_param_name";s:11:"description";s:48:"Get the title for a Comcode tag parameter title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Title.";}}s:43:"_try_for_special_comcode_tag_extra_param_ui";a:5:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"UI fields.";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:15:"fields_advanced";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Advanced UI fields.";s:11:"phpdoc_name";s:15:"fields_advanced";}i:4;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Hidden fields.";s:11:"phpdoc_name";s:6:"hidden";}i:5;a:5:{s:4:"name";s:8:"defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Default parameter values.";s:11:"phpdoc_name";s:8:"defaults";}}s:4:"name";s:43:"_try_for_special_comcode_tag_extra_param_ui";s:11:"description";s:86:"See if we have specialisation code for inserting an extra Comcode tag parameter input.";s:5:"flags";a:0:{}}s:49:"_try_for_special_comcode_tag_specific_contents_ui";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"UI fields.";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:15:"fields_advanced";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Advanced UI fields.";s:11:"phpdoc_name";s:15:"fields_advanced";}i:4;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Hidden fields.";s:11:"phpdoc_name";s:6:"hidden";}i:5;a:5:{s:4:"name";s:13:"default_embed";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default embed contents.";s:11:"phpdoc_name";s:13:"default_embed";}i:6;a:5:{s:4:"name";s:10:"javascript";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:21:"JavaScript to deploy.";s:11:"phpdoc_name";s:10:"javascript";}i:7;a:5:{s:4:"name";s:7:"preview";s:3:"ref";b:1;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether previewing will be allowed.";s:11:"phpdoc_name";s:7:"preview";}}s:4:"name";s:49:"_try_for_special_comcode_tag_specific_contents_ui";s:11:"description";s:66:"See if we have specialisation code for Comcode tag contents input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether we did render specialisation code (if not, standard code will be deployed by the calling function).";}}s:27:"comcode_helper_script_step3";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"comcode_helper_script_step3";s:11:"description";s:47:"Render a step of the Comcode tag helper dialog.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The step UI.";}}s:32:"_get_preview_environment_comcode";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:32:"_get_preview_environment_comcode";s:11:"description";s:46:"Reads a Comcode tag from the POST environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"The full Comcode for that tag.";}}s:18:"get_defaults_multi";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"All default values for the tag.";s:11:"phpdoc_name";s:8:"defaults";}i:1;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"Match name for the parameter set.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"get_defaults_multi";s:11:"description";s:99:"Locate a set of consistently named parameters and generate an array of them for a multi-line input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"List of values.";}}s:13:"check_comcode";a:5:{s:8:"filename";s:25:"sources/comcode_check.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The Comcode to convert";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:7:{s:4:"name";s:13:"source_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:194:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:7:{s:4:"name";s:22:"attachment_possibility";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:135:"Whether there might be new attachments. If there are, we will check as lax- as attachments are always preserved by forcing lax parsing.";s:11:"phpdoc_name";s:22:"attachment_possibility";}}s:4:"name";s:13:"check_comcode";s:11:"description";s:27:"Check the Comcode is valid.";s:5:"flags";a:0:{}}s:32:"comcode_censored_raw_code_access";a:6:{s:8:"filename";s:27:"sources/comcode_cleanup.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:7:"Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:7:{s:4:"name";s:10:"aggressive";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:124:"Force an HTML-evaluation of the Comcode through this security ID then back to Comcode, as a security technique (null: don't)";s:11:"phpdoc_name";s:10:"aggressive";}}s:4:"name";s:32:"comcode_censored_raw_code_access";s:11:"description";s:194:"Censor some Comcode raw code so that another user can see it.This function isn't designed to be perfectly secure, and we don't guarantee it's always run, but as a rough thing we prefer to do it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Censored Comcode";}}s:25:"download_associated_media";a:5:{s:8:"filename";s:27:"sources/comcode_cleanup.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:14:"Comcode / HTML";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:25:"download_associated_media";s:11:"description";s:42:"Filter external media, copying it locally.";s:5:"flags";a:0:{}}s:26:"_download_associated_media";a:5:{s:8:"filename";s:27:"sources/comcode_cleanup.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:14:"Comcode / HTML";s:11:"phpdoc_name";s:4:"text";}i:1;a:5:{s:4:"name";s:7:"old_url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"Old URL to download and replace";s:11:"phpdoc_name";s:7:"old_url";}}s:4:"name";s:26:"_download_associated_media";s:11:"description";s:60:"Filter external media, copying it locally (helper function).";s:5:"flags";a:0:{}}s:22:"init__comcode_compiler";a:5:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"init__comcode_compiler";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:28:"wysiwyg_comcode_markup_style";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The Comcode tag";s:11:"phpdoc_name";s:3:"tag";}i:1;a:7:{s:4:"name";s:10:"attributes";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:37:"The parameters (null: don't consider)";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:7:{s:4:"name";s:5:"embed";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:46:"The contents of the tag (null: don't consider)";s:11:"phpdoc_name";s:5:"embed";}i:3;a:7:{s:4:"name";s:11:"html_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether HTML structure errors have been spotted so far (limits how $semiparse_mode rendering works)";s:11:"phpdoc_name";s:11:"html_errors";}i:4;a:7:{s:4:"name";s:12:"conservative";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Don't add things to WYSIWYG_COMCODE__HTML that may not be in some situations";s:11:"phpdoc_name";s:12:"conservative";}}s:4:"name";s:28:"wysiwyg_comcode_markup_style";s:11:"description";s:51:"Find how Comcode will be represented in the editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:29:"The Comcode integration style";}}s:26:"add_wysiwyg_comcode_markup";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The Comcode tag";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The parameters";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:5:"embed";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:23:"The contents of the tag";s:11:"phpdoc_name";s:5:"embed";}i:3;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:65:"Whether we are in semihtml mode. We are always in semi-parse mode";s:11:"phpdoc_name";s:8:"semihtml";}i:4;a:7:{s:4:"name";s:6:"method";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:"Display method (null: auto-detect)";s:11:"phpdoc_name";s:6:"method";}i:5;a:7:{s:4:"name";s:11:"html_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether HTML structure errors have been spotted so far (limits how $semiparse_mode rendering works)";s:11:"phpdoc_name";s:11:"html_errors";}}s:4:"name";s:26:"add_wysiwyg_comcode_markup";s:11:"description";s:64:"Output a Comcode tag in WYSIWYG-editor format, for tidy editing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:38:"The HTML (null: render as native HTML)";}}s:21:"__comcode_to_tempcode";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The Comcode to convert";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:171:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:5:{s:4:"name";s:8:"wrap_pos";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"The position to conduct wordwrapping at (null: do not conduct word-wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:4;a:5:{s:4:"name";s:7:"pass_id";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:260:"A special identifier that can identify this resource in a sea of our resources of this class; usually this can be ignored, but may be used to provide a binding between JavaScript in evaluated Comcode, and the surrounding environment (null: no explicit binding)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:6;a:5:{s:4:"name";s:14:"semiparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:199:"Whether to parse so as to create something that would fit inside a semihtml tag. It means we generate HTML, with Comcode written into it where the tag could never be reverse-converted (e.g. a block).";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:7;a:5:{s:4:"name";s:13:"preparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether this is being pre-parsed, to pick up errors before row insertion.";s:11:"phpdoc_name";s:13:"preparse_mode";}i:8;a:5:{s:4:"name";s:15:"is_all_semihtml";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:100:"Whether to treat this whole thing as being wrapped in semihtml, but apply normal security otherwise.";s:11:"phpdoc_name";s:15:"is_all_semihtml";}i:9;a:5:{s:4:"name";s:15:"structure_sweep";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether we are only doing this parse to find the title structure";s:11:"phpdoc_name";s:15:"structure_sweep";}i:10;a:5:{s:4:"name";s:10:"check_only";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:117:"Whether to only check the Comcode. It's best to use the check_comcode function which will in turn use this parameter.";s:11:"phpdoc_name";s:10:"check_only";}i:11;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:12;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}}s:4:"name";s:21:"__comcode_to_tempcode";s:11:"description";s:323:"Convert the specified Comcode (text format) into a Tempcode tree. You shouldn't output the Tempcode tree to the browser, as it looks really horrible. If you are in a rare case where you need to output directly (not through templates), you should call the evaluate method on the Tempcode object, to convert it into a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The Tempcode generated";}}s:12:"in_tag_stack";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"tag_stack";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The tag stack";s:11:"phpdoc_name";s:9:"tag_stack";}i:1;a:5:{s:4:"name";s:4:"tags";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:8:"The tags";s:11:"phpdoc_name";s:4:"tags";}}s:4:"name";s:12:"in_tag_stack";s:11:"description";s:42:"Find if any of some tags are in the stack.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether one is present";}}s:11:"_opened_tag";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:171:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:13:"attribute_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The attribute map of the tag";s:11:"phpdoc_name";s:13:"attribute_map";}i:3;a:5:{s:4:"name";s:11:"current_tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The identifier for the tag";s:11:"phpdoc_name";s:11:"current_tag";}i:4;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The offset of the tag in the Comcode";s:11:"phpdoc_name";s:3:"pos";}i:5;a:5:{s:4:"name";s:17:"comcode_dangerous";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the parser allows dangerous Comcode";s:11:"phpdoc_name";s:17:"comcode_dangerous";}i:6;a:5:{s:4:"name";s:22:"comcode_dangerous_html";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the parser allows dangerous HTML";s:11:"phpdoc_name";s:22:"comcode_dangerous_html";}i:7;a:5:{s:4:"name";s:25:"in_separate_parse_section";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether the parser is/was in a separate parse section (e.g. a 'code' tag)";s:11:"phpdoc_name";s:25:"in_separate_parse_section";}i:8;a:5:{s:4:"name";s:7:"in_html";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the parser is/was in an HTML region";s:11:"phpdoc_name";s:7:"in_html";}i:9;a:5:{s:4:"name";s:11:"in_semihtml";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the parser is/was in a Semi-HTML region";s:11:"phpdoc_name";s:11:"in_semihtml";}i:10;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the tag is a closing tag";s:11:"phpdoc_name";s:5:"close";}i:11;a:5:{s:4:"name";s:3:"len";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:25:"The length of the Comcode";s:11:"phpdoc_name";s:3:"len";}i:12;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:24:"The Comcode being parsed";s:11:"phpdoc_name";s:7:"comcode";}}s:4:"name";s:11:"_opened_tag";s:11:"description";s:87:"Helper function for setting up and juggling variables after reaching a new Comcode tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:31:"A tuple of new parser settings.";}}s:11:"filter_html";a:5:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:171:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The offset of the tag in the Comcode";s:11:"phpdoc_name";s:3:"pos";}i:3;a:5:{s:4:"name";s:3:"len";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:25:"The length of the Comcode";s:11:"phpdoc_name";s:3:"len";}i:4;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:24:"The Comcode being parsed";s:11:"phpdoc_name";s:7:"comcode";}i:5;a:5:{s:4:"name";s:7:"in_html";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the parser is/was in an HTML region";s:11:"phpdoc_name";s:7:"in_html";}i:6;a:5:{s:4:"name";s:11:"in_semihtml";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the parser is/was in a Semi-HTML region";s:11:"phpdoc_name";s:11:"in_semihtml";}}s:4:"name";s:11:"filter_html";s:11:"description";s:23:"Filter HTML for safety.";s:5:"flags";a:0:{}}s:17:"_close_open_lists";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"list_indent";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:46:"The depth level of lists that we need to close";s:11:"phpdoc_name";s:11:"list_indent";}i:1;a:6:{s:4:"name";s:9:"list_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"List-type code";s:11:"phpdoc_name";s:9:"list_type";s:3:"set";s:6:"ul a 1";}}s:4:"name";s:17:"_close_open_lists";s:11:"description";s:33:"Get HTML to close any open lists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:157:"The output needed to close the lists, and the new list indentation (always zero). Done like this so we can use 'list' to set both at once in the main parser.";}}s:24:"parse_single_comcode_tag";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:2:{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:21:"The data being parsed";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:3:"tag";s:7:"default";s:3:"\w+";s:11:"default_raw";s:5:"'\w+'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"The tag we're expecting to see here / a regexp";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:24:"parse_single_comcode_tag";s:11:"description";s:64:"Parse a single tag. For use separately, not used by main parser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"A map of parsed attributes";}}s:23:"init__comcode_from_html";a:5:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"init__comcode_from_html";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:14:"_img_tag_fixup";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:14:"_img_tag_fixup";s:11:"description";s:84:"Used by semihtml_to_comcode to turn to \[img\]. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:18:"_img_tag_fixup_raw";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:18:"_img_tag_fixup_raw";s:11:"description";s:100:"Used by semihtml_to_comcode to turn fix URLs in to be absolute. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:17:"_a_tag_link_fixup";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:17:"_a_tag_link_fixup";s:11:"description";s:80:"Used by semihtml_to_comcode to fix tag links. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:16:"_css_color_fixup";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:16:"_css_color_fixup";s:11:"description";s:102:"Used by semihtml_to_comcode to fix CSS colours aways from RGB notation. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:15:"_css_quot_fixup";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:15:"_css_quot_fixup";s:11:"description";s:115:"Used by semihtml_to_comcode to make it so inline CSS with quotes uses single quotes. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:14:"_cdata_protect";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:14:"_cdata_protect";s:11:"description";s:109:"Apply temporary ad hoc-escaping to a CDATA area (we'll reverse convert later). preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:16:"_codetag_protect";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:16:"_codetag_protect";s:11:"description";s:108:"Apply temporary ad hoc-escaping to a code tags (we'll reverse convert later). preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:18:"_codetag_unprotect";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:18:"_codetag_unprotect";s:11:"description";s:108:"Apply temporary ad hoc-escaping to a code tags (we'll reverse convert later). preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:25:"_reorder_xhtml_attributes";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:25:"_reorder_xhtml_attributes";s:11:"description";s:101:"Reorder XHTML attributes alphabetically, so our regexp's match better. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:23:"_reorder_css_properties";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:23:"_reorder_css_properties";s:11:"description";s:101:"Reorder style properties alphabetically, so our regexp's match better. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:25:"_semihtml_to_comcode_wrap";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:25:"_semihtml_to_comcode_wrap";s:11:"description";s:86:"Convert Semi-HTML into Comcode. Cleanup where possible. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:12:"_debuttonise";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:12:"_debuttonise";s:11:"description";s:99:"Extract underlying Comcode from an editor Comcode-management button. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:11:"_detagonise";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:11:"_detagonise";s:11:"description";s:81:"Extract underlying Comcode from an editor XML tag. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:15:"_dedirectiveise";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:15:"_dedirectiveise";s:11:"description";s:92:"Extract underlying Tempcode directive from an editor XML tag. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:29:"remove_wysiwyg_comcode_markup";a:5:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:9:"Semi-HTML";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:29:"remove_wysiwyg_comcode_markup";s:11:"description";s:100:"Cleanup HTML coming out of the WYSIWYG editor, converting represented Comcode back to proper Comcode";s:5:"flags";a:0:{}}s:30:"convert_html_headers_to_titles";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"Semi-HTML";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:30:"convert_html_headers_to_titles";s:11:"description";s:38:"Convert HTML headers to Comcode titles";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:43:"Semi-HTML, with headers converted to titles";}}s:19:"force_clean_comcode";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The messy Comcode.";s:11:"phpdoc_name";s:7:"comcode";}}s:4:"name";s:19:"force_clean_comcode";s:11:"description";s:47:"Convert HTML-filled Comcode to cleaner Comcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:20:"The cleaned Comcode.";}}s:20:"wysiwygify_media_set";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:29:"The Semi-HTML to be converted";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:20:"wysiwygify_media_set";s:11:"description";s:71:"Strip down the contents of the media_set tag for easier WYSIWYG-editing";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The equivalent Comcode";}}s:19:"semihtml_to_comcode";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:29:"The Semi-HTML to be converted";s:11:"phpdoc_name";s:8:"semihtml";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether to force full conversion regardless of settings";s:11:"phpdoc_name";s:5:"force";}i:2;a:7:{s:4:"name";s:5:"quick";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to trust the HTML is valid rather than cleaning it up (e.g. for Composr-generated HTML)";s:11:"phpdoc_name";s:5:"quick";}}s:4:"name";s:19:"semihtml_to_comcode";s:11:"description";s:54:"Convert Semi-HTML into comcode. Cleanup where possible";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The equivalent Comcode";}}s:23:"comcode_strip_html_tags";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:23:"comcode_strip_html_tags";s:11:"description";s:125:"preg_replace callback to strip HTML tags from inside a Comcode tag, except formatting ones that we'll convert to white-space.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:20:"comcode_preg_replace";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"element";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The element name to replace over";s:11:"phpdoc_name";s:7:"element";}i:1;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:7:"Pattern";s:11:"phpdoc_name";s:7:"pattern";}i:2;a:5:{s:4:"name";s:11:"replacement";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:71:"Replacement (string or single element array specifying a function name)";s:11:"phpdoc_name";s:11:"replacement";}i:3;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Haystack";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:20:"comcode_preg_replace";s:11:"description";s:315:"Do a regular expression match, locked correctly to single Comcode elements. This is necessary to make sure nesting is handled correctly, which regular expressions cannot do on their own.This is a good test case:exit(comcode_preg_replace('test','#\[test\](.*)\[/test\]#','>${1}<','[test]x[test a]y[/test]z[/test]'));";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:23:"array_html_preg_replace";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"element";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The element name to replace over";s:11:"phpdoc_name";s:7:"element";}i:1;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:37:"A list of pairs: Pattern, Replacement";s:11:"phpdoc_name";s:5:"array";}i:2;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Haystack";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:23:"array_html_preg_replace";s:11:"description";s:332:"Do some regular expression matches, locked correctly to single HTML elements. This is necessary to make sure nesting is handled correctly, which regular expressions cannot do on their own.It is case-sensitive for performance reasons. But everyone uses lower-case tags for a long time now. Also assumes no tabs within tag definition.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:22:"init__comcode_renderer";a:5:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"init__comcode_renderer";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"_apply_emoticons";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:61:"The text to add emoticons to (assumption: that this is XHTML)";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:16:"_apply_emoticons";s:11:"description";s:325:"Get the text with all the emoticon codes replaced with the correct XHTML. Emoticons are determined by your forum system.This is not used in the normal Comcode chain - it's for non-Comcode things that require emoticons (actually in reality it is used in the Comcode chain if the optimiser sees that a full parse is not needed)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:50:"The XHTML with the image-substitution of emoticons";}}s:11:"do_emoticon";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"imgcode";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"Parameter triple(template,src,code)";s:11:"phpdoc_name";s:7:"imgcode";}}s:4:"name";s:11:"do_emoticon";s:11:"description";s:63:"Turn a triple of emoticon parameters into some actual Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:68:"Either a Tempcode result, or a string result, depending on $evaluate";}}s:28:"check_naughty_javascript_url";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:32:"The member who submitted the URL";s:11:"phpdoc_name";s:13:"source_member";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:16:"The URL to check";s:11:"phpdoc_name";s:3:"url";}i:2;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:28:"check_naughty_javascript_url";s:11:"description";s:186:"Check the specified URL for potentially malicious JavaScript/etc. If any is found, the hack attack is logged if in an active post request by the submitting member otherwise filtered out.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"Filtered input URL.";}}s:22:"_custom_comcode_import";a:5:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:22:"_custom_comcode_import";s:11:"description";s:54:"Load up Custom Comcode tags so that we may parse them.";s:5:"flags";a:0:{}}s:20:"_comcode_to_tempcode";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The Comcode to convert";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:7:{s:4:"name";s:13:"source_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:194:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:7:{s:4:"name";s:8:"wrap_pos";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:"The position to conduct wordwrapping at (null: do not conduct word-wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:4;a:7:{s:4:"name";s:7:"pass_id";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:260:"A special identifier that can identify this resource in a sea of our resources of this class; usually this can be ignored, but may be used to provide a binding between JavaScript in evaluated Comcode, and the surrounding environment (null: no explicit binding)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:6;a:7:{s:4:"name";s:14:"semiparse_mode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:199:"Whether to parse so as to create something that would fit inside a semihtml tag. It means we generate HTML, with Comcode written into it where the tag could never be reverse-converted (e.g. a block).";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:7;a:7:{s:4:"name";s:13:"preparse_mode";s:7:"default";s:13:"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 this is being pre-parsed, to pick up errors before row insertion.";s:11:"phpdoc_name";s:13:"preparse_mode";}i:8;a:7:{s:4:"name";s:15:"is_all_semihtml";s:7:"default";s:13:"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 treat this whole thing as being wrapped in semihtml, but apply normal security otherwise.";s:11:"phpdoc_name";s:15:"is_all_semihtml";}i:9;a:7:{s:4:"name";s:15:"structure_sweep";s:7:"default";s:13:"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 we are only doing this parse to find the title structure";s:11:"phpdoc_name";s:15:"structure_sweep";}i:10;a:7:{s:4:"name";s:10:"check_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:117:"Whether to only check the Comcode. It's best to use the check_comcode function which will in turn use this parameter.";s:11:"phpdoc_name";s:10:"check_only";}i:11;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:12;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}}s:4:"name";s:20:"_comcode_to_tempcode";s:11:"description";s:326:"Convert the specified Comcode (unknown format) into a Tempcode tree. You shouldn't output the Tempcode tree to the browser, as it looks really horrible. If you are in a rare case where you need to output directly (not through templates), you should call the evaluate method on the Tempcode object, to convert it into a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The Tempcode generated";}}s:19:"comcode_parse_error";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"preparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether this is being pre-parsed, to pick up errors before row insertion.";s:11:"phpdoc_name";s:13:"preparse_mode";}i:1;a:5:{s:4:"name";s:8:"_message";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:91:"Error message details to pass to do_lang, or if the first in the list is null, use directly";s:11:"phpdoc_name";s:8:"_message";}i:2;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:54:"The position during parsing that the error occurred at";s:11:"phpdoc_name";s:3:"pos";}i:3;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:40:"The Comcode the parser error occurred in";s:11:"phpdoc_name";s:7:"comcode";}i:4;a:7:{s:4:"name";s:10:"check_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:34:"Whether to only check the Comcode.";s:11:"phpdoc_name";s:10:"check_only";}}s:4:"name";s:19:"comcode_parse_error";s:11:"description";s:28:"Show a Comcode parser error.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:114:"An error message to put in the output stream (shown in certain situations, where in other situations we bomb out).";}}s:32:"absoluteise_and_test_comcode_url";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"given_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:13:"URL to fixup.";s:11:"phpdoc_name";s:9:"given_url";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Comcode tag name.";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:32:"absoluteise_and_test_comcode_url";s:11:"description";s:74:"Make a given URL parameter an absolute URL; Fix any errors in it; Test it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:10:"Fixed URL.";}}s:8:"test_url";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"url_full";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"URL to test.";s:11:"phpdoc_name";s:8:"url_full";}i:1;a:5:{s:4:"name";s:8:"tag_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:49:"Comcode tag type, to which the URL is associated.";s:11:"phpdoc_name";s:8:"tag_type";}i:2;a:5:{s:4:"name";s:9:"given_url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"URL actually provided.";s:11:"phpdoc_name";s:9:"given_url";}i:3;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:8:"test_url";s:11:"description";s:28:"Test a URL as a broken link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:36:"Error message, or blank if no error.";}}s:16:"_do_tags_comcode";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The tag being converted";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:134:"A map of the attributes (name=>val) for the tag. Val is usually a string, although in select places, the XML parser may pass Tempcode.";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:5:"embed";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:149:"Tempcode of the inside of the tag ([between]THIS[/between]); the XML parser may pass in special stuff here, which is interpreted only for select tags";s:11:"phpdoc_name";s:5:"embed";}i:3;a:5:{s:4:"name";s:17:"comcode_dangerous";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether we are allowed to proceed even if this tag is marked as 'dangerous'";s:11:"phpdoc_name";s:17:"comcode_dangerous";}i:4;a:5:{s:4:"name";s:7:"pass_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:100:"A special identifier to mark where the resultant Tempcode is going to end up (e.g. the ID of a post)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:5:{s:4:"name";s:6:"marker";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The position this tag occurred at in the Comcode";s:11:"phpdoc_name";s:6:"marker";}i:6;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}i:7;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:8;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:9;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:26:"The whole chunk of Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:10;a:5:{s:4:"name";s:15:"structure_sweep";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is only a structure sweep";s:11:"phpdoc_name";s:15:"structure_sweep";}i:11;a:5:{s:4:"name";s:14:"semiparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether we are in semi-parse-mode (some tags might convert differently)";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:12;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:13;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}i:14;a:7:{s:4:"name";s:11:"in_semihtml";s:7:"default";s:13:"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 what we have came from inside a semihtml tag";s:11:"phpdoc_name";s:11:"in_semihtml";}i:15;a:7:{s:4:"name";s:15:"is_all_semihtml";s:7:"default";s:13:"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 what we have came from semihtml mode";s:11:"phpdoc_name";s:15:"is_all_semihtml";}i:16;a:7:{s:4:"name";s:11:"html_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether HTML structure errors have been spotted so far (limits how $semiparse_mode rendering works)";s:11:"phpdoc_name";s:11:"html_errors";}}s:4:"name";s:16:"_do_tags_comcode";s:11:"description";s:272:"Get Tempcode for a Comcode tag. This function should always return (errors should be placed in the Comcode output stream), for stability reasons (i.e. if you're submitting something, you can't have the whole submit process die half way through in an unstructured fashion).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:28:"The Tempcode for the Comcode";}}s:11:"do_code_box";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:5:{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:53:"The data type (e.g. file extension) we are rendering.";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:5:"embed";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"Contents (code) to render.";s:11:"phpdoc_name";s:5:"embed";}i:2;a:7:{s:4:"name";s:7:"numbers";s:7:"default";s:12:"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 show line numbers.";s:11:"phpdoc_name";s:7:"numbers";}i:3;a:7:{s:4:"name";s:11:"in_semihtml";s:7:"default";s:13:"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 what we have came from inside a semihtml tag";s:11:"phpdoc_name";s:11:"in_semihtml";}i:4;a:7:{s:4:"name";s:15:"is_all_semihtml";s:7:"default";s:13:"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 what we have came from semihtml mode";s:11:"phpdoc_name";s:15:"is_all_semihtml";}}s:4:"name";s:11:"do_code_box";s:11:"description";s:18:"Render a code box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"A pair: The Tempcode for the code box, and the title of the box";}}s:18:"_do_contents_level";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"tree_structure";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The TOC (sub)tree";s:11:"phpdoc_name";s:14:"tree_structure";}i:1;a:5:{s:4:"name";s:10:"list_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:36:"The list types to use for each level";s:11:"phpdoc_name";s:10:"list_types";}i:2;a:5:{s:4:"name";s:4:"base";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The level to start from";s:11:"phpdoc_name";s:4:"base";}i:3;a:7:{s:4:"name";s:9:"the_level";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:36:"The level we are at in the recursion";s:11:"phpdoc_name";s:9:"the_level";}}s:4:"name";s:18:"_do_contents_level";s:11:"description";s:46:"Recursive algorithm to make table of contents.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The TOC node.";}}s:17:"get_tutorial_link";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.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:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:17:"get_tutorial_link";s:11:"description";s:42:"Find a specified tutorial link identifier.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:33:"The value (null: value not found)";}}s:17:"set_tutorial_link";a:5:{s:8:"filename";s:28:"sources/comcode_renderer.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:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:17:"set_tutorial_link";s:11:"description";s:66:"Set the specified value to the specified tutorial link identifier.";s:5:"flags";a:0:{}}s:22:"comcode_convert_script";a:5:{s:8:"filename";s:25:"sources/comcode_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"comcode_convert_script";s:11:"description";s:41:"AJAX script for HTML<>Comcode conversion.";s:5:"flags";a:0:{}}s:13:"reindent_code";a:6:{s:8:"filename";s:25:"sources/comcode_tools.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Code to reindent";s:11:"phpdoc_name";s:4:"text";}i:1;a:5:{s:4:"name";s:10:"is_comcode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the code is Comcode";s:11:"phpdoc_name";s:10:"is_comcode";}}s:4:"name";s:13:"reindent_code";s:11:"description";s:63:"Turn a triple of emoticon parameters into some actual tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Reindented code";}}s:14:"init__commandr";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__commandr";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"commandr_script";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"commandr_script";s:11:"description";s:22:"Commandr entry script.";s:5:"flags";a:0:{}}s:19:"get_queued_messages";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"xml";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Output as XML or Tempcode?";s:11:"phpdoc_name";s:3:"xml";}}s:4:"name";s:19:"get_queued_messages";s:11:"description";s:85:"Returns a string containing the XML for any messages queued to be sent to the client.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"The queued message XML";}}s:15:"do_command_help";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"command";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Command name";s:11:"phpdoc_name";s:7:"command";}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:7:"Options";s:11:"phpdoc_name";s:7:"options";}i:2;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:129:"Parameters (keys are the parameters, values are always set to true, i.e. it is an array of as many trues as there are parameters)";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:15:"do_command_help";s:11:"description";s:30:"Template for a command's help.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"Help template";}}s:33:"commandr_make_normal_html_visible";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:25:"HTML (string or Tempcode)";s:11:"phpdoc_name";s:4:"html";}}s:4:"name";s:33:"commandr_make_normal_html_visible";s:11:"description";s:60:"Put something non-Commandr in a standard box so it looks OK.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"Boxed HTML";}}s:17:"init__commandr_fs";a:5:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__commandr_fs";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:12:"init__config";a:5:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__config";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:10:"multi_lang";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"multi_lang";s:11:"description";s:39:"Find whether to run in multi-lang mode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether to run in multi-lang mode.";}}s:19:"load_config_options";a:5:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"load_config_options";s:11:"description";s:24:"Load all config options.";s:5:"flags";a:0:{}}s:18:"load_value_options";a:5:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"load_value_options";s:11:"description";s:23:"Load all value options.";s:5:"flags";a:0:{}}s:10:"get_option";a:6:{s:8:"filename";s:18:"sources/config.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:7:"ID_TEXT";s:11:"description";s:22:"The name of the option";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:10:"missing_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:50:"Where to accept a missing option (and return null)";s:11:"phpdoc_name";s:10:"missing_ok";}}s:4:"name";s:10:"get_option";s:11:"description";s:53:"Find the value of the specified configuration option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:77:"The value (null: either null value, or no option found while $missing_ok set)";}}s:9:"get_value";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;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:54:"Value to return if value not found (null: return null)";s:11:"phpdoc_name";s:7:"default";}i:2;a:7:{s:4:"name";s:19:"elective_or_lengthy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:342:"Whether this value is an elective/lengthy one. Use this for getting & setting if you don't want it to be loaded up in advance for every page view (in bulk alongside other values), or if the value may be more than 255 characters. Performance tradeoff: frequently used values should not be elective, infrequently used values should be elective.";s:11:"phpdoc_name";s:19:"elective_or_lengthy";}i:3;a:7:{s:4:"name";s:8:"env_also";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:102:"Whether to also check server environmental variables. Only use if $elective_or_lengthy is set to false";s:11:"phpdoc_name";s:8:"env_also";}}s:4:"name";s:9:"get_value";s:11:"description";s:54:"Find a specified value. Values are set with set_value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:53:"The value (null: value not found and default is null)";}}s:20:"get_value_newer_than";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:61:"The cutoff time (an absolute time, not a relative "time ago")";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:7:{s:4:"name";s:19:"elective_or_lengthy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:342:"Whether this value is an elective/lengthy one. Use this for getting & setting if you don't want it to be loaded up in advance for every page view (in bulk alongside other values), or if the value may be more than 255 characters. Performance tradeoff: frequently used values should not be elective, infrequently used values should be elective.";s:11:"phpdoc_name";s:19:"elective_or_lengthy";}}s:4:"name";s:20:"get_value_newer_than";s:11:"description";s:79:"Find the specified configuration option if it is younger than a specified time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:44:"The value (null: value newer than not found)";}}s:9:"set_value";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:24:"The value (null: delete)";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:19:"elective_or_lengthy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:342:"Whether this value is an elective/lengthy one. Use this for getting & setting if you don't want it to be loaded up in advance for every page view (in bulk alongside other values), or if the value may be more than 255 characters. Performance tradeoff: frequently used values should not be elective, infrequently used values should be elective.";s:11:"phpdoc_name";s:19:"elective_or_lengthy";}}s:4:"name";s:9:"set_value";s:11:"description";s:59:"Set the specified situational value to the specified value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:104:"The value just set, same as $value (just as a niceity so that Commandr users can see something "happen")";}}s:12:"delete_value";a:5:{s:8:"filename";s:18:"sources/config.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:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:19:"elective_or_lengthy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:342:"Whether this value is an elective/lengthy one. Use this for getting & setting if you don't want it to be loaded up in advance for every page view (in bulk alongside other values), or if the value may be more than 255 characters. Performance tradeoff: frequently used values should not be elective, infrequently used values should be elective.";s:11:"phpdoc_name";s:19:"elective_or_lengthy";}}s:4:"name";s:12:"delete_value";s:11:"description";s:27:"Delete a situational value.";s:5:"flags";a:0:{}}s:13:"delete_values";a:5:{s:8:"filename";s:18:"sources/config.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:27:"List of names of the values";s:11:"phpdoc_name";s:6:"values";}}s:4:"name";s:13:"delete_values";s:11:"description";s:26:"Delete situational values.";s:5:"flags";a:0:{}}s:11:"update_stat";a:5:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"stat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The codename for the stat";s:11:"phpdoc_name";s:4:"stat";}i:1;a:5:{s:4:"name";s:9:"increment";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"What to increment the statistic by";s:11:"phpdoc_name";s:9:"increment";}}s:4:"name";s:11:"update_stat";s:11:"description";s:62:"Increment the specified stored value, by the specified amount.";s:5:"flags";a:0:{}}s:12:"invert_value";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:1:{i:0;a:6:{s:4:"name";s:3:"old";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The old value";s:11:"phpdoc_name";s:3:"old";s:3:"set";s:3:"0 1";}}s:4:"name";s:12:"invert_value";s:11:"description";s:301:"Very simple function to invert the meaning of an old hidden option. We often use this when we've promoted a hidden option into a new proper option but inverted the meaning in the process - we use this in the default value generation code, as an in-line aid to preserve existing hidden option settings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The inverted value";}}s:11:"_multi_lang";a:6:{s:8:"filename";s:19:"sources/config2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_multi_lang";s:11:"description";s:199:"An option has dissappeared somehow - find it via searching our code-base for it's install code. It doesn't get returned, just loaded up. This function will produce a fatal error if we cannot find it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether to run in multi-lang mode.";}}s:18:"get_default_option";a:6:{s:8:"filename";s:19:"sources/config2.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:7:"ID_TEXT";s:11:"description";s:22:"The name of the option";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:18:"get_default_option";s:11:"description";s:41:"Get the default value of a config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:26:"The value (null: disabled)";}}s:10:"set_option";a:5:{s:8:"filename";s:19:"sources/config2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:20:"will_be_formally_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:34:"Whether this was a human-set value";s:11:"phpdoc_name";s:20:"will_be_formally_set";}}s:4:"name";s:10:"set_option";s:11:"description";s:188:"Set a configuration option with the specified values.Note that you may wish to also empty the template cache after running this function. Config options may have been set into template(s).";s:5:"flags";a:0:{}}s:23:"config_update_value_ref";a:5:{s:8:"filename";s:19:"sources/config2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"old_setting";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The old value";s:11:"phpdoc_name";s:11:"old_setting";}i:1;a:5:{s:4:"name";s:7:"setting";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The name value";s:11:"phpdoc_name";s:7:"setting";}i:2;a:5:{s:4:"name";s:4:"type";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:4:"name";s:23:"config_update_value_ref";s:11:"description";s:45:"Update a reference stored in a config option.";s:5:"flags";a:0:{}}s:17:"config_option_url";a:6:{s:8:"filename";s:19:"sources/config2.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:7:"ID_TEXT";s:11:"description";s:22:"The config option name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:17:"config_option_url";s:11:"description";s:45:"Update a reference stored in a config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:58:"URL to set the config option (null: no such option exists)";}}s:20:"delete_config_option";a:5:{s:8:"filename";s:19:"sources/config2.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:7:"ID_TEXT";s:11:"description";s:33:"The codename of the config option";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:20:"delete_config_option";s:11:"description";s:64:"Deletes a specified config option permanently from the database.";s:5:"flags";a:0:{}}s:20:"rename_config_option";a:5:{s:8:"filename";s:19:"sources/config2.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:12:"The old 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:12:"The new name";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:20:"rename_config_option";s:11:"description";s:23:"Rename a config option.";s:5:"flags";a:0:{}}s:23:"may_view_content_behind";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:4:{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:13:"User to check";s:11:"phpdoc_name";s:9:"member_id";}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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:7:{s:4:"name";s:8:"type_has";s:7:"default";s:12:"content_type";s:11:"default_raw";s:14:"'content_type'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Content type type";s:11:"phpdoc_name";s:8:"type_has";}}s:4:"name";s:23:"may_view_content_behind";s:11:"description";s:76:"Given a particular bit of feedback content, check if the user may access it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}s:18:"get_content_object";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:1:{i:0;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";}}s:4:"name";s:18:"get_content_object";s:11:"description";s:154:"Get the CMA hook object for a content type. Also works for resource types (i.e. if it's a resource, although not actually considered content technically).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:36:"The object (null: could not get one)";}}s:26:"convert_composr_type_codes";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:3:{i:0;a:6:{s:4:"name";s:8:"type_has";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"Content type type we know";s:11:"phpdoc_name";s:8:"type_has";s:3:"set";s:206:"addon content_type meta_hook search_hook seo_type_code feedback_type_code permissions_type_code module table commandr_filesystem_hook rss_hook attachment_hook unvalidated_hook notification_hook sitemap_hook";}i:1;a:5:{s:4:"name";s:7:"type_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Content type ID we know";s:11:"phpdoc_name";s:7:"type_id";}i:2;a:6:{s:4:"name";s:11:"type_wanted";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"Desired content type";s:11:"phpdoc_name";s:11:"type_wanted";s:3:"set";s:206:"addon content_type meta_hook search_hook seo_type_code feedback_type_code permissions_type_code module table commandr_filesystem_hook rss_hook attachment_hook unvalidated_hook notification_hook sitemap_hook";}}s:4:"name";s:26:"convert_composr_type_codes";s:11:"description";s:52:"Find a different content type code from the one had.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:51:"Corrected content type type (blank: could not find)";}}s:35:"convert_composr_type_codes_multiple";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:2:{i:0;a:6:{s:4:"name";s:8:"type_has";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"Content type type we know";s:11:"phpdoc_name";s:8:"type_has";s:3:"set";s:206:"addon content_type meta_hook search_hook seo_type_code feedback_type_code permissions_type_code module table commandr_filesystem_hook rss_hook attachment_hook unvalidated_hook notification_hook sitemap_hook";}i:1;a:5:{s:4:"name";s:7:"type_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Content type ID we know";s:11:"phpdoc_name";s:7:"type_id";}}s:4:"name";s:35:"convert_composr_type_codes_multiple";s:11:"description";s:67:"Find content type info, for a particular content type type we know.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"Content type info list (blank: could not find)";}}s:19:"content_get_details";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:3:{i:0;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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:17:"resource_fs_style";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to use the content API as resource-fs requires (may be slightly different)";s:11:"phpdoc_name";s:17:"resource_fs_style";}}s:4:"name";s:19:"content_get_details";s:11:"description";s:34:"Get meta details of a content item";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:140:"Tuple: title, submitter, content hook info, the content row, URL (for use within current browser session), URL (for use in emails / sharing)";}}s:15:"content_get_row";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:1;a:5:{s:4:"name";s:8:"cma_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"The info array for the content type";s:11:"phpdoc_name";s:8:"cma_info";}}s:4:"name";s:15:"content_get_row";s:11:"description";s:38:"Get the content row of a content item.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:25:"The row (null: not found)";}}s:32:"extract_content_str_id_from_data";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"The data row";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:8:"cma_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"The info array for the content type";s:11:"phpdoc_name";s:8:"cma_info";}}s:4:"name";s:32:"extract_content_str_id_from_data";s:11:"description";s:40:"Get the string content ID for some data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"The ID";}}s:28:"get_content_where_for_str_id";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"str_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:6:"str_id";}i:1;a:5:{s:4:"name";s:8:"cma_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"The info array for the content type";s:11:"phpdoc_name";s:8:"cma_info";}i:2;a:7:{s:4:"name";s:11:"table_alias";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:28:"The table alias (null: none)";s:11:"phpdoc_name";s:11:"table_alias";}}s:4:"name";s:28:"get_content_where_for_str_id";s:11:"description";s:70:"Given the string content ID get a mapping we could use as a WHERE map.";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:"append_content_select_for_id";a:5:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:6:"select";}i:1;a:5:{s:4:"name";s:8:"cma_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"The info array for the content type";s:11:"phpdoc_name";s:8:"cma_info";}i:2;a:7:{s:4:"name";s:11:"table_alias";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:28:"The table alias (null: none)";s:11:"phpdoc_name";s:11:"table_alias";}}s:4:"name";s:28:"append_content_select_for_id";s:11:"description";s:70:"Given the string content ID get a mapping we could use as a WHERE map.";s:5:"flags";a:0:{}}s:23:"content_language_string";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:65:"The language string stub (must itself be a valid language string)";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:23:"content_language_string";s:11:"description";s:124:"Get an action language string for a particular content type based on a stub.If it can't get a match it'll just use the stub.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Tempcode of language string";}}s:14:"init__content2";a:5:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__content2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"get_order_field";a:6:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:10:"entry_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"The type of resource being ordered";s:11:"phpdoc_name";s:10:"entry_type";}i:1;a:5:{s:4:"name";s:13:"category_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:72:"The type of resource being ordered within (null: no categories involved)";s:11:"phpdoc_name";s:13:"category_type";}i:2;a:5:{s:4:"name";s:13:"current_order";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:44:"The current order (null: new, so add to end)";s:11:"phpdoc_name";s:13:"current_order";}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:63:"Maximum order field (null: work out from content type metadata)";s:11:"phpdoc_name";s:3:"max";}i:4;a:7:{s:4:"name";s:5:"total";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:92:"Number of entries, alternative to supplying $max (null: work out from content type metadata)";s:11:"phpdoc_name";s:5:"total";}i:5;a:7:{s:4:"name";s:11:"order_field";s:7:"default";s:5:"order";s:11:"default_raw";s:7:"'order'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The POST field to save under";s:11:"phpdoc_name";s:11:"order_field";}i:6;a:7:{s:4:"name";s:11:"description";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:"Description for field input (null: {!ORDER})";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"get_order_field";s:11:"description";s:22:"Get an order inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Ordering field";}}s:22:"post_param_order_field";a:6:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:11:"order_field";s:7:"default";s:5:"order";s:11:"default_raw";s:7:"'order'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The POST field";s:11:"phpdoc_name";s:11:"order_field";}}s:4:"name";s:22:"post_param_order_field";s:11:"description";s:26:"Get submitted order value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The order value";}}s:19:"metadata_get_fields";a:6:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:5:{i:0;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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:37:"The ID of the resource (null: adding)";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:14:"allow_no_owner";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to allow owner to be left blank (meaning no owner)";s:11:"phpdoc_name";s:14:"allow_no_owner";}i:3;a:7:{s:4:"name";s:14:"fields_to_skip";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:48:"List of fields to NOT take in (null: empty list)";s:11:"phpdoc_name";s:14:"fields_to_skip";}i:4;a:7:{s:4:"name";s:11:"show_header";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:55:"Whether to show a header (a METADATA_HEADER_* constant)";s:11:"phpdoc_name";s:11:"show_header";}}s:4:"name";s:19:"metadata_get_fields";s:11:"description";s:77:"Get template fields to insert into a form page, for manipulation of metadata.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Form page Tempcode fragment";}}s:26:"actual_metadata_get_fields";a:6:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:4:{i:0;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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:41:"The old ID of the resource (null: adding)";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:14:"fields_to_skip";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:48:"List of fields to NOT take in (null: empty list)";s:11:"phpdoc_name";s:14:"fields_to_skip";}i:3;a:7:{s:4:"name";s:14:"new_content_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:52:"The new ID of the resource (null: not being renamed)";s:11:"phpdoc_name";s:14:"new_content_id";}}s:4:"name";s:26:"actual_metadata_get_fields";s:11:"description";s:30:"Get field values for metadata.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:146:"A map of standard metadata fields (name to value). If adding, this map is accurate for adding. If editing, nulls mean do-not-edit or non-editable.";}}s:15:"set_url_moniker";a:5:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:4:{i:0;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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The old ID of the resource";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:14:"fields_to_skip";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:48:"List of fields to NOT take in (null: empty list)";s:11:"phpdoc_name";s:14:"fields_to_skip";}i:3;a:7:{s:4:"name";s:14:"new_content_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:52:"The new ID of the resource (null: not being renamed)";s:11:"phpdoc_name";s:14:"new_content_id";}}s:4:"name";s:15:"set_url_moniker";s:11:"description";s:33:"Set a URL moniker for a resource.";s:5:"flags";a:0:{}}s:35:"actual_metadata_get_fields__special";a:5:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"metadata";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:26:"metadata already collected";s:11:"phpdoc_name";s:8:"metadata";}i:1;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The parameter name";s:11:"phpdoc_name";s:3:"key";}i:2;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:29:"The default if it was not set";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:35:"actual_metadata_get_fields__special";s:11:"description";s:66:"Read in an additional metadata field, specific to a resource type.";s:5:"flags";a:0:{}}s:24:"get_privacy_where_clause";a:6:{s:8:"filename";s:27:"sources/content_privacy.php";s:10:"parameters";a:5:{i:0;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:1;a:5:{s:4:"name";s:11:"table_alias";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The table alias in the main query";s:11:"phpdoc_name";s:11:"table_alias";}i:2;a:7:{s:4:"name";s:17:"viewing_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:62:"Viewing member to check privacy against (null: current member)";s:11:"phpdoc_name";s:17:"viewing_member_id";}i:3;a:7:{s:4:"name";s:13:"additional_or";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:49:"Additional OR clause for letting the user through";s:11:"phpdoc_name";s:13:"additional_or";}i:4;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:96:"Member owning the content (null: do dynamically in query via content hook). Usually pass as null";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:24:"get_privacy_where_clause";s:11:"description";s:55:"Get the SQL extension clauses for implementing privacy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:115:"A tuple: extra JOIN clause, extra WHERE clause, table clause (rarely used), direct table WHERE clause (rarely used)";}}s:18:"has_privacy_access";a:6:{s:8:"filename";s:27:"sources/content_privacy.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:17:"viewing_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:62:"Viewing member to check privacy against (null: current member)";s:11:"phpdoc_name";s:17:"viewing_member_id";}}s:4:"name";s:18:"has_privacy_access";s:11:"description";s:43:"Check to see if some content may be viewed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether there is access";}}s:13:"check_privacy";a:5:{s:8:"filename";s:27:"sources/content_privacy.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:17:"viewing_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:62:"Viewing member to check privacy against (null: current member)";s:11:"phpdoc_name";s:17:"viewing_member_id";}}s:4:"name";s:13:"check_privacy";s:11:"description";s:78:"Check to see if some content may be viewed. Exit with an access denied if not.";s:5:"flags";a:0:{}}s:18:"privacy_limits_for";a:6:{s:8:"filename";s:27:"sources/content_privacy.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:10:"strict_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:88:"Whether to get a full list including friends even when there are over a thousand friends";s:11:"phpdoc_name";s:10:"strict_all";}}s:4:"name";s:18:"privacy_limits_for";s:11:"description";s:47:"Find list of members who may view some content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:61:"A list of member IDs that have access (null: no restrictions)";}}s:23:"get_privacy_form_fields";a:6:{s:8:"filename";s:28:"sources/content_privacy2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:42:"The content type (null: could be multiple)";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:7:{s:4:"name";s:10:"content_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:29:"The content ID (null: adding)";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:11:"show_header";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to show a header to separate the settings out";s:11:"phpdoc_name";s:11:"show_header";}i:3;a:7:{s:4:"name";s:6:"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:23:"Prefix for field naming";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:23:"get_privacy_form_fields";s:11:"description";s:44:"Get form fields for setting content privacy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The form fields";}}s:19:"read_privacy_fields";a:6:{s:8:"filename";s:28:"sources/content_privacy2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"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:23:"Prefix for field naming";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:19:"read_privacy_fields";s:11:"description";s:51:"Reading privacy settings from the POST environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A pair: the privacy level, the list of usernames";}}s:24:"save_privacy_form_fields";a:6:{s:8:"filename";s:28:"sources/content_privacy2.php";s:10:"parameters";a:5:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:29:"The content ID (null: adding)";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:6:{s:4:"name";s:13:"privacy_level";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The privacy level";s:11:"phpdoc_name";s:13:"privacy_level";s:3:"set";s:28:"members friends staff guests";}i:3;a:5:{s:4:"name";s:17:"additional_access";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"A list of usernames";s:11:"phpdoc_name";s:17:"additional_access";}i:4;a:7:{s:4:"name";s:12:"send_invites";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:138:"Whether to send out invite notifications (only do this is it is a new content entry, rather than something obscure, like a member's photo)";s:11:"phpdoc_name";s:12:"send_invites";}}s:4:"name";s:24:"save_privacy_form_fields";s:11:"description";s:48:"Actualise form data for setting content privacy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether it saved something";}}s:26:"delete_privacy_form_fields";a:6:{s:8:"filename";s:28:"sources/content_privacy2.php";s:10:"parameters";a:2:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:26:"delete_privacy_form_fields";s:11:"description";s:20:"Delete privacy data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether it deleted something";}}s:20:"show_content_reviews";a:6:{s:8:"filename";s:27:"sources/content_reviews.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:8:{s:4:"name";s:12:"display_mode";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:110:"The display mode (0=show full box of review information, 1=show last reviewed time, 2=show next reviewed time)";s:11:"phpdoc_name";s:12:"display_mode";s:3:"set";s:5:"0 1 2";}}s:4:"name";s:20:"show_content_reviews";s:11:"description";s:28:"Show content review details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"Content review details to show";}}s:25:"content_review_get_fields";a:6:{s:8:"filename";s:28:"sources/content_reviews2.php";s:10:"parameters";a:3:{i:0;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:1;a:7:{s:4:"name";s:10:"content_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:36:"The content ID (null: not added yet)";s:11:"phpdoc_name";s:10:"content_id";}i:2;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:120:"The catalogue name where to grab default settings from (null: content type has no bound catalogue / try and auto-detect)";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:25:"content_review_get_fields";s:11:"description";s:58:"Get a form to control how some content should be reviewed.";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:"content_review_set";a:5:{s:8:"filename";s:28:"sources/content_reviews2.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:14:"old_content_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:44:"The old content ID (null: not being renamed)";s:11:"phpdoc_name";s:14:"old_content_id";}}s:4:"name";s:18:"content_review_set";s:11:"description";s:42:"Save the results of a content review form.";s:5:"flags";a:0:{}}s:23:"schedule_content_review";a:5:{s:8:"filename";s:28:"sources/content_reviews2.php";s:10:"parameters";a:6:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:11:"review_freq";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:64:"The review frequency in seconds (null: no repeat review pattern)";s:11:"phpdoc_name";s:11:"review_freq";}i:3;a:7:{s:4:"name";s:16:"next_review_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:62:"Manual next review time (null: work out from review frequency)";s:11:"phpdoc_name";s:16:"next_review_time";}i:4;a:8:{s:4:"name";s:11:"auto_action";s:7:"default";s:5:"leave";s:11:"default_raw";s:7:"'leave'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"Automatic action to perform upon review time";s:11:"phpdoc_name";s:11:"auto_action";s:3:"set";s:23:"leave unvalidate delete";}i:5;a:7:{s:4:"name";s:21:"display_review_status";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 to display the review status publicly";s:11:"phpdoc_name";s:21:"display_review_status";}}s:4:"name";s:23:"schedule_content_review";s:11:"description";s:46:"Schedule that some content should be reviewed.";s:5:"flags";a:0:{}}s:20:"uninstall_gps_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"uninstall_gps_fields";s:11:"description";s:43:"Remove CPF fields for GPS.Assumes Conversr.";s:5:"flags";a:0:{}}s:18:"install_gps_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"install_gps_fields";s:11:"description";s:43:"Create CPF fields for GPS.Assumes Conversr.";s:5:"flags";a:0:{}}s:21:"uninstall_name_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"uninstall_name_fields";s:11:"description";s:45:"Remove CPF fields for names.Assumes Conversr.";s:5:"flags";a:0:{}}s:19:"install_name_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"install_name_fields";s:11:"description";s:45:"Create CPF fields for names.Assumes Conversr.";s:5:"flags";a:0:{}}s:24:"uninstall_address_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"uninstall_address_fields";s:11:"description";s:47:"Remove CPF fields for address.Assumes Conversr.";s:5:"flags";a:0:{}}s:22:"install_address_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"install_address_fields";s:11:"description";s:47:"Create CPF fields for address.Assumes Conversr.";s:5:"flags";a:0:{}}s:28:"uninstall_mobile_phone_field";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"uninstall_mobile_phone_field";s:11:"description";s:51:"Remove CPF field for mobile phone.Assumes Conversr.";s:5:"flags";a:0:{}}s:26:"install_mobile_phone_field";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"install_mobile_phone_field";s:11:"description";s:51:"Create CPF field for mobile phone.Assumes Conversr.";s:5:"flags";a:0:{}}s:14:"critical_error";a:5:{s:8:"filename";s:27:"sources/critical_errors.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The error message code";s:11:"phpdoc_name";s:4:"code";}i:1;a:7:{s:4:"name";s:5:"relay";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:50:"Relayed additional details (null: nothing relayed)";s:11:"phpdoc_name";s:5:"relay";}i:2;a:7:{s:4:"name";s:4:"exit";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether to actually exit";s:11:"phpdoc_name";s:4:"exit";}}s:4:"name";s:14:"critical_error";s:11:"description";s:44:"Exit with a nicely formatted critical error.";s:5:"flags";a:0:{}}s:11:"init__crypt";a:5:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__crypt";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:13:"password_hash";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:3:{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:20:"The password to hash";s:11:"phpdoc_name";s:8:"password";}i:1;a:5:{s:4:"name";s:4:"algo";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:54:"The algorithm to use (Defined by PASSWORD_* constants)";s:11:"phpdoc_name";s:4:"algo";}i:2;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:36:"The options for the algorithm to use";s:11:"phpdoc_name";s:7:"options";}}s:4:"name";s:13:"password_hash";s:11:"description";s:47:"Hash the password using the specified algorithm";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:34:"The hashed password (false: error)";}}s:15:"password_verify";a:6:{s:8:"filename";s:17:"sources/crypt.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 password to verify";s:11:"phpdoc_name";s:8:"password";}i:1;a:5:{s:4:"name";s:4:"hash";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The hash to verify against";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:15:"password_verify";s:11:"description";s:73:"Verify a password against a hash using a timing attack resistant approach";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"If the password matches the hash";}}s:13:"_crypt_strlen";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"binary_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The input string";s:11:"phpdoc_name";s:13:"binary_string";}}s:4:"name";s:13:"_crypt_strlen";s:11:"description";s:297:"Count the number of bytes in a stringWe cannot simply use strlen() for this, because it might be overwritten by the mbstring extension.In this case, strlen() will count the number of *characters* based on the internal encoding. Asequence of bytes might be regarded as a single multibyte character.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of bytes";}}s:13:"_crypt_substr";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"binary_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The input string";s:11:"phpdoc_name";s:13:"binary_string";}i:1;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Start";s:11:"phpdoc_name";s:5:"start";}i:2;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Length";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:13:"_crypt_substr";s:11:"description";s:36:"Get a substring based on byte limits";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The substring";}}s:12:"ratchet_hash";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The password in plain text";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:10:"SHORT_TEXT";s:11:"description";s:8:"The salt";s:11:"phpdoc_name";s:4:"salt";}i:2;a:7:{s:4:"name";s:12:"legacy_style";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:35:"Legacy hashing style to fallback to";s:11:"phpdoc_name";s:12:"legacy_style";}}s:4:"name";s:12:"ratchet_hash";s:11:"description";s:147:"Do a hashing, with support for our "ratcheting up" algorithm (i.e. lets the admin increase the complexity over the time, as CPU speeds get faster).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The salted&hashed password";}}s:19:"ratchet_hash_verify";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The password in plain text";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:10:"SHORT_TEXT";s:11:"description";s:8:"The salt";s:11:"phpdoc_name";s:4:"salt";}i:2;a:5:{s:4:"name";s:16:"pass_hash_salted";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:152:"The prior salted&hashed password, which will also include the algorithm/ratcheting level (unless it's old style, in which case we use non-ratcheted md5)";s:11:"phpdoc_name";s:16:"pass_hash_salted";}i:3;a:7:{s:4:"name";s:12:"legacy_style";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:35:"Legacy hashing style to fallback to";s:11:"phpdoc_name";s:12:"legacy_style";}}s:4:"name";s:19:"ratchet_hash_verify";s:11:"description";s:65:"Verify a password is correct by comparison of the hashed version.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the password if verified";}}s:12:"produce_salt";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"produce_salt";s:11:"description";s:29:"Get a decent randomised salt.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The salt";}}s:13:"get_site_salt";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_site_salt";s:11:"description";s:142:"Get the site-wide salt. It should be something hard for a hacker to get, so we depend on data gathered both from the database and file-system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The salt";}}s:17:"get_rand_password";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_rand_password";s:11:"description";s:26:"Get a randomised password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The randomised password";}}s:24:"get_secure_random_number";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_secure_random_number";s:11:"description";s:61:"Get a secure random number, the best this PHP version can do.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The randomised number";}}s:21:"check_master_password";a:6:{s:8:"filename";s:24:"sources/crypt_master.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:21:"check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:31:"check_master_password_from_hash";a:6:{s:8:"filename";s:24:"sources/crypt_master.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:21:"password_given_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:21:"password_given_hashed";}}s:4:"name";s:31:"check_master_password_from_hash";s:11:"description";s:41:"Check the given master password is valid.";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:28:"_master_password_check__init";a:5:{s:8:"filename";s:24:"sources/crypt_master.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"_master_password_check__init";s:11:"description";s:41:"Prepare for checking the master password.";s:5:"flags";a:0:{}}s:30:"_master_password_check__result";a:5:{s:8:"filename";s:24:"sources/crypt_master.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"result";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether login is successful";s:11:"phpdoc_name";s:6:"result";}}s:4:"name";s:30:"_master_password_check__result";s:11:"description";s:41:"Prepare for checking the master password.";s:5:"flags";a:0:{}}s:18:"csrf_filter_active";a:6:{s:8:"filename";s:23:"sources/csrf_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"csrf_filter_active";s:11:"description";s:57:"Whether CSRF-checks are active for the current zone/page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:19:"generate_csrf_token";a:6:{s:8:"filename";s:23:"sources/csrf_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"generate_csrf_token";s:11:"description";s:31:"Generate and save a CSRF-token.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Generated token";}}s:16:"check_csrf_token";a:5:{s:8:"filename";s:23:"sources/csrf_filter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"token";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:27:"Provided token (null: none)";s:11:"phpdoc_name";s:5:"token";}}s:4:"name";s:16:"check_csrf_token";s:11:"description";s:37:"Check a provided CSRF-token is valid.";s:5:"flags";a:0:{}}s:21:"delete_expired_tokens";a:5:{s:8:"filename";s:23:"sources/csrf_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"delete_expired_tokens";s:11:"description";s:27:"Delete expired CSRF-tokens.";s:5:"flags";a:0:{}}s:16:"init__css_and_js";a:5:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__css_and_js";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:11:"css_inherit";a:6:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"css_file";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Source CSS file";s:11:"phpdoc_name";s:8:"css_file";}i:1;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Source theme";s:11:"phpdoc_name";s:5:"theme";}i:2;a:5:{s:4:"name";s:17:"destination_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Destination theme";s:11:"phpdoc_name";s:17:"destination_theme";}i:3;a:5:{s:4:"name";s:4:"seed";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:27:"Seed (null: do not re-seed)";s:11:"phpdoc_name";s:4:"seed";}i:4;a:5:{s:4:"name";s:4:"dark";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether it is a dark theme";s:11:"phpdoc_name";s:4:"dark";}i:5;a:6:{s:4:"name";s:9:"algorithm";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The algorithm to use";s:11:"phpdoc_name";s:9:"algorithm";s:3:"set";s:13:"equations hsv";}}s:4:"name";s:11:"css_inherit";s:11:"description";s:100:"Inherit from a CSS file to create a string for a (possibly theme-gen) modified version of that file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The sheet";}}s:10:"js_compile";a:5:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:1:"j";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"Name of the JS file";s:11:"phpdoc_name";s:1:"j";}i:1;a:5:{s:4:"name";s:13:"js_cache_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:24:"Full path to the JS file";s:11:"phpdoc_name";s:13:"js_cache_path";}i:2;a:7:{s:4:"name";s:6:"minify";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to also do minification";s:11:"phpdoc_name";s:6:"minify";}}s:4:"name";s:10:"js_compile";s:11:"description";s:26:"Compile a JavaScript file.";s:5:"flags";a:0:{}}s:22:"compress_cms_stub_file";a:5:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"stub_file";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:33:"Full path to the file to compress";s:11:"phpdoc_name";s:9:"stub_file";}}s:4:"name";s:22:"compress_cms_stub_file";s:11:"description";s:45:"Compress a file, and save with a stem of .gz.";s:5:"flags";a:0:{}}s:11:"css_compile";a:5:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:12:"active_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The theme the file is being loaded for";s:11:"phpdoc_name";s:12:"active_theme";}i:1;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The theme the file is in";s:11:"phpdoc_name";s:5:"theme";}i:2;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"Name of the CSS file";s:11:"phpdoc_name";s:1:"c";}i:3;a:5:{s:4:"name";s:9:"full_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:25:"Full path to the CSS file";s:11:"phpdoc_name";s:9:"full_path";}i:4;a:5:{s:4:"name";s:14:"css_cache_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:46:"Full path to where the cached CSS file will go";s:11:"phpdoc_name";s:14:"css_cache_path";}i:5;a:7:{s:4:"name";s:6:"minify";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to also do minification";s:11:"phpdoc_name";s:6:"minify";}}s:4:"name";s:11:"css_compile";s:11:"description";s:19:"Compile a CSS file.";s:5:"flags";a:0:{}}s:16:"_css_cms_include";a:6:{s:8:"filename";s:22:"sources/css_and_js.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:17:"Matched variables";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:16:"_css_cms_include";s:11:"description";s:52:"preg_replace callback, to handle CSS file inclusion.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:53:"A pair: success status, The text of the compiled file";}}s:12:"_css_compile";a:6:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:12:"active_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The theme the file is being loaded for";s:11:"phpdoc_name";s:12:"active_theme";}i:1;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Theme name";s:11:"phpdoc_name";s:5:"theme";}i:2;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The CSS file required";s:11:"phpdoc_name";s:1:"c";}i:3;a:5:{s:4:"name";s:9:"full_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:61:"Full path to CSS file (file is in uncompiled Tempcode format)";s:11:"phpdoc_name";s:9:"full_path";}i:4;a:7:{s:4:"name";s:6:"minify";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to also do minification";s:11:"phpdoc_name";s:6:"minify";}}s:4:"name";s:12:"_css_compile";s:11:"description";s:36:"Return a specific compiled CSS file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:53:"A pair: success status, The text of the compiled file";}}s:9:"js_minify";a:6:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"js";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"JavaScript to minimise";s:11:"phpdoc_name";s:2:"js";}}s:4:"name";s:9:"js_minify";s:11:"description";s:29:"Minimise the given JavaScript";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Minimised JavaScript";}}s:10:"css_minify";a:6:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"v";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"Stylesheet definitions as string";s:11:"phpdoc_name";s:1:"v";}}s:4:"name";s:10:"css_minify";s:11:"description";s:31:"Minifies stylesheet definitions";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"Minified stylesheet definitions";}}s:19:"country_to_currency";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"country";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The country code.";s:11:"phpdoc_name";s:7:"country";}}s:4:"name";s:19:"country_to_currency";s:11:"description";s:42:"Convert a country code to a currency code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The currency code.";}}s:12:"get_currency";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_currency";s:11:"description";s:50:"Find the active ISO currency for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The active currency";}}s:16:"currency_convert";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The starting amount (integer or float).";s:11:"phpdoc_name";s:6:"amount";}i:1;a:5:{s:4:"name";s:13:"from_currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The start currency code.";s:11:"phpdoc_name";s:13:"from_currency";}i:2;a:7:{s:4:"name";s:11:"to_currency";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:48:"The end currency code (null: unknown, guess it).";s:11:"phpdoc_name";s:11:"to_currency";}i:3;a:7:{s:4:"name";s:6:"string";s:7:"default";s:13:"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 as a string.";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"currency_convert";s:11:"description";s:30:"Perform a currency conversion.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:80:"The new amount as float, or if $string then as a string (null: failed to do it).";}}s:19:"get_currency_symbol";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The currency.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:19:"get_currency_symbol";s:11:"description";s:30:"Get the symbol for a currency.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:116:"A pair: The symbol, and whether the symbol is okay to use on its own (as it is the accepted default for the symbol).";}}s:16:"get_currency_map";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_currency_map";s:11:"description";s:21:"Get the currency map.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:62:"The currency map, currency code, to an array of country codes.";}}s:22:"add_custom_comcode_tag";a:6:{s:8:"filename";s:26:"sources/custom_comcode.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Tag name.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:42:"Tag title (string, or language string ID).";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:48:"Tag description (string, or language string ID).";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:7:"replace";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:21:"Tag replacement text.";s:11:"phpdoc_name";s:7:"replace";}i:4;a:5:{s:4:"name";s:7:"example";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:12:"Tag example.";s:11:"phpdoc_name";s:7:"example";}i:5;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"Tag parameters.";s:11:"phpdoc_name";s:10:"parameters";}i:6;a:5:{s:4:"name";s:7:"enabled";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the tag is enabled.";s:11:"phpdoc_name";s:7:"enabled";}i:7;a:5:{s:4:"name";s:13:"dangerous_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:28:"Whether the tag is disabled.";s:11:"phpdoc_name";s:13:"dangerous_tag";}i:8;a:5:{s:4:"name";s:9:"block_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:31:"Whether the tag is a block tag.";s:11:"phpdoc_name";s:9:"block_tag";}i:9;a:5:{s:4:"name";s:11:"textual_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the tag is a textual tag.";s:11:"phpdoc_name";s:11:"textual_tag";}i:10;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:22:"add_custom_comcode_tag";s:11:"description";s:25:"Add a custom Comcode tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The tag name";}}s:23:"edit_custom_comcode_tag";a:6:{s:8:"filename";s:26:"sources/custom_comcode.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:7:"old_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Current tag name.";s:11:"phpdoc_name";s:7:"old_tag";}i:1;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"New tag name.";s:11:"phpdoc_name";s:3:"tag";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:42:"Tag title (string, or language string ID).";s:11:"phpdoc_name";s:5:"title";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:48:"Tag description (string, or language string ID).";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:7:"replace";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:21:"Tag replacement text.";s:11:"phpdoc_name";s:7:"replace";}i:5;a:5:{s:4:"name";s:7:"example";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:12:"Tag example.";s:11:"phpdoc_name";s:7:"example";}i:6;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"Tag parameters.";s:11:"phpdoc_name";s:10:"parameters";}i:7;a:5:{s:4:"name";s:7:"enabled";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the tag is enabled.";s:11:"phpdoc_name";s:7:"enabled";}i:8;a:5:{s:4:"name";s:13:"dangerous_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:28:"Whether the tag is disabled.";s:11:"phpdoc_name";s:13:"dangerous_tag";}i:9;a:5:{s:4:"name";s:9:"block_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:31:"Whether the tag is a block tag.";s:11:"phpdoc_name";s:9:"block_tag";}i:10;a:5:{s:4:"name";s:11:"textual_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the tag is a textual tag.";s:11:"phpdoc_name";s:11:"textual_tag";}i:11;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:23:"edit_custom_comcode_tag";s:11:"description";s:26:"Edit a custom Comcode tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The tag name";}}s:25:"delete_custom_comcode_tag";a:5:{s:8:"filename";s:26:"sources/custom_comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Tag name.";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:25:"delete_custom_comcode_tag";s:11:"description";s:28:"Delete a custom Comcode tag.";s:5:"flags";a:0:{}}s:25:"init__database__sqlserver";a:5:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"init__database__sqlserver";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"init__database__xml";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"init__database__xml";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"_get_sql_keywords";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_get_sql_keywords";s:11:"description";s:30:"Get a list of all SQL keywords";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of keywords";}}s:14:"init__database";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__database";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"db_map_restrict";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{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:13:"DB table row.";s:11:"phpdoc_name";s:3:"row";}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:31:"List of fields to copy through.";s:11:"phpdoc_name";s:6:"fields";}}s:4:"name";s:15:"db_map_restrict";s:11:"description";s:91:"Extract certain fields, including any Tempcode details for them, from a DB table row array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Map of fields.";}}s:18:"multi_lang_content";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"multi_lang_content";s:11:"description";s:64:"Find whether to run in multi-lang mode for content translations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to run in multi-lang mode for content translations.";}}s:16:"_general_db_init";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_general_db_init";s:11:"description";s:45:"Called once our DB connection becomes active.";s:5:"flags";a:0:{}}s:18:"reload_lang_fields";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:4:"full";s:7:"default";s:13:"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 we need to know about non-Comcode language fields";s:11:"phpdoc_name";s:4:"full";}i:1;a:7:{s:4:"name";s:10:"only_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:47:"The only table to reload for (null: all tables)";s:11:"phpdoc_name";s:10:"only_table";}}s:4:"name";s:18:"reload_lang_fields";s:11:"description";s:41:"Reload language fields from the database.";s:5:"flags";a:0:{}}s:21:"can_arbitrary_groupby";a:6:{s:8:"filename";s:20:"sources/database.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_get_first_id";a:6:{s:8:"filename";s:20:"sources/database.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:18:"db_string_equal_to";a:6:{s:8:"filename";s:20:"sources/database.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:20:"sources/database.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:14:"db_encode_like";a:6:{s:8:"filename";s:20:"sources/database.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:16:"db_has_full_text";a:6:{s:8:"filename";s:20:"sources/database.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:20:"sources/database.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:17:"db_has_subqueries";a:6:{s:8:"filename";s:20:"sources/database.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:26:"db_has_expression_ordering";a:6:{s:8:"filename";s:20:"sources/database.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_escape_string";a:6:{s:8:"filename";s:20:"sources/database.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:7:"db_cast";a:6:{s:8:"filename";s:20:"sources/database.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:11:"get_db_type";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_db_type";s:11:"description";s:61:"Get the type of database installed, such as MySQL, or Oracle.";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:18:"get_use_persistent";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_use_persistent";s:11:"description";s:73:"Find Composr was installed to use persistent database connections or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether to use persistent database connections";}}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:335:"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_'. Note that anything that might write to an arbitrary db, must ask that db for it's table prefix (if it needs it of course... the db abstracts away most needs for it)";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:16:"get_db_site_host";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_db_site_host";s:11:"description";s:56:"Get the host of the database ('localhost', for example).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The database host";}}s:11:"get_db_site";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_db_site";s:11:"description";s:29:"Get the name of the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The database site";}}s:16:"get_db_site_user";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_db_site_user";s:11:"description";s:26:"Get the database username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The database username";}}s:20:"get_db_site_password";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_db_site_password";s:11:"description";s:26:"Get the database password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The database password";}}s:18:"get_db_forums_host";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_db_forums_host";s:11:"description";s:62:"Get the host of the forum database ('localhost', for example).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The database host";}}s:13:"get_db_forums";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_db_forums";s:11:"description";s:35:"Get the name of the forum database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The forum database site";}}s:18:"get_db_forums_user";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_db_forums_user";s:11:"description";s:32:"Get the forum database username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:27:"The forum database username";}}s:22:"get_db_forums_password";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_db_forums_password";s:11:"description";s:32:"Get the forum database password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:27:"The forum database password";}}s:24:"is_on_multi_site_network";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:2:"db";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:76:"The DB connection to check against (null: site's main active forum database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"is_on_multi_site_network";s:11:"description";s:44:"Find whether we are on a multi-site-network.";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:11:"is_forum_db";a:6:{s:8:"filename";s:20:"sources/database.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:6:"object";s:11:"description";s:34:"The DB connection to check against";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:11:"is_forum_db";s:11:"description";s:60:"Find whether a database connection is to the forum database.";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:15:"get_db_keywords";a:6:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_db_keywords";s:11:"description";s:71:"Returns a list of keywords for all databases we might some day support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of pairs";}}s:21:"get_false_permissions";a:6:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"get_false_permissions";s:11:"description";s:92:"Returns a list of pairs, for which permissions are false by default for ordinary usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of pairs";}}s:20:"get_true_permissions";a:6:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_true_permissions";s:11:"description";s:91:"Returns a list of pairs, for which permissions are true by default for ordinary usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of pairs";}}s:16:"privilege_exists";a:6:{s:8:"filename";s:27:"sources/database_action.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:7:"ID_TEXT";s:11:"description";s:22:"The name of the option";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:16:"privilege_exists";s:11:"description";s:28:"Check if a privilege 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:13:"add_privilege";a:5:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"section";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The section the privilege is filled under";s:11:"phpdoc_name";s:7:"section";}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:30:"The codename for the privilege";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"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 this permission is granted to all usergroups by default";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:13:"not_even_mods";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether this permission is not granted to supermoderators by default (something very sensitive)";s:11:"phpdoc_name";s:13:"not_even_mods";}}s:4:"name";s:13:"add_privilege";s:11:"description";s:49:"Add a privilege, and apply it to every usergroup.";s:5:"flags";a:0:{}}s:13:"set_privilege";a:5:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:39:"The usergroup having the permission set";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:5:{s:4:"name";s:10:"permission";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The codename of the permission";s:11:"phpdoc_name";s:10:"permission";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the usergroup has the permission";s:11:"phpdoc_name";s:5:"value";}i:3;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:4;a:7:{s:4:"name";s:13:"category_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:58:"The category-type for the permission (null: none required)";s:11:"phpdoc_name";s:13:"category_type";}i:5;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:8:"?ID_TEXT";s:11:"description";s:64:"The category-name/value for the permission (null: none required)";s:11:"phpdoc_name";s:13:"category_name";}}s:4:"name";s:13:"set_privilege";s:11:"description";s:33:"Sets the privilege of a usergroup";s:5:"flags";a:0:{}}s:16:"rename_privilege";a:5:{s:8:"filename";s:27:"sources/database_action.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:12:"The old 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:12:"The new name";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:16:"rename_privilege";s:11:"description";s:19:"Rename a privilege.";s:5:"flags";a:0:{}}s:16:"delete_privilege";a:5:{s:8:"filename";s:27:"sources/database_action.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:7:"ID_TEXT";s:11:"description";s:30:"The codename of the permission";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:16:"delete_privilege";s:11:"description";s:19:"Delete a privilege.";s:5:"flags";a:0:{}}s:18:"delete_attachments";a:5:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:2:{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:8:"The hook";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:18:"delete_attachments";s:11:"description";s:53:"Delete attachments solely used by the specified hook.";s:5:"flags";a:0:{}}s:16:"mass_delete_lang";a:5:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:3:{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:9:"The table";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:5:"attrs";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The attributes";s:11:"phpdoc_name";s:5:"attrs";}i:2;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:7:"?object";s:11:"description";s:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:16:"mass_delete_lang";s:11:"description";s:103:"Deletes all language strings linked to by the specified table and attribute identifiers, if they exist.";s:5:"flags";a:0:{}}s:21:"init__database_helper";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"init__database_helper";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:12:"_check_sizes";a:6:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:8:{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:11:"primary_key";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether this will be in a primary key";s:11:"phpdoc_name";s:11:"primary_key";}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:103:"The fields (a map between field name and field type [field type must start '*' if it is to be counted])";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:7:"id_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:77:"The name of what we are checking (only used to generate clear error messages)";s:11:"phpdoc_name";s:7:"id_name";}i:4;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:5;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:6;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";}i:7;a:7:{s:4:"name";s:15:"return_on_error";s:7:"default";s:13:"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 return on errors";s:11:"phpdoc_name";s:15:"return_on_error";}}s:4:"name";s:12:"_check_sizes";s:11:"description";s:56:"Check a set of fields aren't going to exceed key limits.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the size limit is not exceeded";}}s:20:"_helper_create_table";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_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: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:4;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:5;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:20:"_helper_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:20:"_helper_create_index";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;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:3;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: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:20:"_helper_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:30:"_helper_delete_index_if_exists";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;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:30:"_helper_delete_index_if_exists";s:11:"description";s:29:"Delete an index from a table.";s:5:"flags";a:0:{}}s:28:"_helper_drop_table_if_exists";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:28:"_helper_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:20:"_helper_rename_table";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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:20:"_helper_rename_table";s:11:"description";s:23:"Rename the given table.";s:5:"flags";a:0:{}}s:23:"_helper_add_table_field";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:23:"_helper_add_table_field";s:11:"description";s:34:"Adds a field to an existing table.";s:5:"flags";a:0:{}}s:27:"_helper_add_table_field_sql";a:6:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:36:"The default value (null: no default)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:27:"_helper_add_table_field_sql";s:11:"description";s:40:"SQL to add a field to an existing table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"A pair: SQL, default value for fields";}}s:25:"_helper_alter_table_field";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:25:"_helper_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:29:"_helper_alter_table_field_sql";a:6:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:29:"_helper_alter_table_field_sql";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:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:3:"SQL";}}s:26:"_helper_change_primary_key";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:2;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:26:"_helper_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:20:"_helper_add_auto_key";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;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:22:"Field name for new key";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"_helper_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:37:"_helper_promote_text_field_to_comcode";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:5;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:37:"_helper_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:26:"_helper_delete_table_field";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:26:"_helper_delete_table_field";s:11:"description";s:52:"Delete the specified field from the specified table.";s:5:"flags";a:0:{}}s:32:"_helper_refresh_field_definition";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:32:"_helper_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:"rebuild_indices";a:5:{s:8:"filename";s:36:"sources/database_multi_lang_conv.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"only_trans";s:7:"default";s:13:"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 to only rebuild translatable field indexes";s:11:"phpdoc_name";s:10:"only_trans";}}s:4:"name";s:15:"rebuild_indices";s:11:"description";s:66:"Rebuild database indices, using correct rules for new field types.";s:5:"flags";a:0:{}}s:27:"disable_content_translation";a:5:{s:8:"filename";s:36:"sources/database_multi_lang_conv.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"disable_content_translation";s:11:"description";s:28:"Disable content translation.";s:5:"flags";a:0:{}}s:26:"enable_content_translation";a:5:{s:8:"filename";s:36:"sources/database_multi_lang_conv.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"enable_content_translation";s:11:"description";s:27:"Enable content translation.";s:5:"flags";a:0:{}}s:43:"_update_base_config_for_content_translation";a:5:{s:8:"filename";s:36:"sources/database_multi_lang_conv.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"new_setting";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"New setting value (i.e. on or off)";s:11:"phpdoc_name";s:11:"new_setting";}}s:4:"name";s:43:"_update_base_config_for_content_translation";s:11:"description";s:53:"Change content translation setting in th config file.";s:5:"flags";a:0:{}}s:24:"init__database_relations";a:5:{s:8:"filename";s:30:"sources/database_relations.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"init__database_relations";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"get_table_purpose_flags";a:6:{s:8:"filename";s:30:"sources/database_relations.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_table_purpose_flags";s:11:"description";s:144:"Find how tables might be ignored for backups etc.This is mainly used for building unit tests that make sure things are consistently implemented.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"List of tables and their status regarding being ignored for backups etc";}}s:22:"table_has_purpose_flag";a:6:{s:8:"filename";s:30:"sources/database_relations.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: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:4:"flag";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"A particular flag(s)";s:11:"phpdoc_name";s:4:"flag";}}s:4:"name";s:22:"table_has_purpose_flag";s:11:"description";s:64:"Find if a table must be ignored for backups or whatever flag(s).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the flag(s) exists (at least one)";}}s:22:"get_table_descriptions";a:6:{s:8:"filename";s:30:"sources/database_relations.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_table_descriptions";s:11:"description";s:32:"Get a map of table descriptions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:25:"Map of table descriptions";}}s:26:"get_relation_map_for_table";a:6:{s:8:"filename";s:30:"sources/database_relations.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:6:"string";s:11:"description";s:18:"A particular table";s:11:"phpdoc_name";s:5:"table";}}s:4:"name";s:26:"get_relation_map_for_table";s:11:"description";s:35:"Get a map of foreign key relations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"Map of foreign key relations";}}s:16:"get_relation_map";a:6:{s:8:"filename";s:30:"sources/database_relations.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_relation_map";s:11:"description";s:35:"Get a map of foreign key relations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"Map of foreign key relations";}}s:21:"init__database_search";a:5:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"init__database_search";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"get_stopwords_list";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_stopwords_list";s:11:"description";s:30:"Get a list of MySQL stopwords.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:54:"List of stopwords (actually a map of stopword to true)";}}s:21:"generate_text_summary";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"_temp_summary";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"What was searched";s:11:"phpdoc_name";s:13:"_temp_summary";}i:1;a:5:{s:4:"name";s:14:"words_searched";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:22:"List of words searched";s:11:"phpdoc_name";s:14:"words_searched";}}s:4:"name";s:21:"generate_text_summary";s:11:"description";s:62:"Highlight keywords in an extracted portion of a piece of text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"Highlighted portion";}}s:17:"opensearch_script";a:5:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"opensearch_script";s:11:"description";s:27:"Server opensearch requests.";s:5:"flags";a:0:{}}s:30:"build_search_submitter_clauses";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:17:"member_field_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:69:"The field name for member IDs (null: Cannot match against member IDs)";s:11:"phpdoc_name";s:17:"member_field_name";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:43:"Member ID (null: Unknown, so cannot search)";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"Author";s:11:"phpdoc_name";s:6:"author";}i:3;a:7:{s:4:"name";s:17:"author_field_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:66:"The field name for authors (null: Cannot match against member IDs)";s:11:"phpdoc_name";s:17:"author_field_name";}}s:4:"name";s:30:"build_search_submitter_clauses";s:11:"description";s:100:"Build up a submitter search clause, taking into account members, authors, usernames, and usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"An SQL fragment (null: block query)";}}s:15:"exact_match_sql";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}i:2;a:8:{s:4:"name";s:4:"type";s:7:"default";s:5:"short";s:11:"default_raw";s:7:"'short'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Table type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:10:"short long";}i:3;a:7:{s:4:"name";s:5:"param";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:43:"Search term (null: lookup from environment)";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"exact_match_sql";s:11:"description";s:96:"Get special SQL from POSTed parameters for a catalogue search field that is to be exact-matched.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:18:"nl_delim_match_sql";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}i:2;a:8:{s:4:"name";s:4:"type";s:7:"default";s:5:"short";s:11:"default_raw";s:7:"'short'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Table type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:10:"short long";}i:3;a:7:{s:4:"name";s:5:"param";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:43:"Search term (null: lookup from environment)";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"nl_delim_match_sql";s:11:"description";s:120:"Get special SQL from POSTed parameters for a catalogue search field for a multi-input field that is to be exact-matched.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:15:"get_search_rows";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:20:{i:0;a:5:{s:4:"name";s:9:"meta_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:68:"The META type used by our content (null: Cannot support META search)";s:11:"phpdoc_name";s:9:"meta_type";}i:1;a:5:{s:4:"name";s:13:"meta_id_field";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:95:"The name of the field that retrieved META IDs will relate to (null: Cannot support META search)";s:11:"phpdoc_name";s:13:"meta_id_field";}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:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:3;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to do a boolean search.";s:11:"phpdoc_name";s:14:"boolean_search";}i:4;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Boolean operator";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"OR AND";}i:5;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:6;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:7;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:8;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:9;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 to only search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:10;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:11;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:183:"The translateable fields to search over (or an ! which is skipped). The first of these must be the title field or an '!'; if it is '!' then the title field will be the first raw-field";s:11:"phpdoc_name";s:6:"fields";}i:12;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The WHERE clause";s:11:"phpdoc_name";s:12:"where_clause";}i:13;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:153:"The WHERE clause that applies specifically for content (this will be duplicated to check against multiple fields). ? refers to the yet-unknown field name";s:11:"phpdoc_name";s:13:"content_where";}i:14;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"What to order by";s:11:"phpdoc_name";s:5:"order";}i:15;a:7:{s:4:"name";s:6:"select";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:14:"What to select";s:11:"phpdoc_name";s:6:"select";}i:16;a:7:{s:4:"name";s:10:"raw_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:66:"The non-translateable fields to search over (null: there are none)";s:11:"phpdoc_name";s:10:"raw_fields";}i:17;a:7:{s:4:"name";s:18:"permissions_module";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:63:"The permission module to check category access for (null: none)";s:11:"phpdoc_name";s:18:"permissions_module";}i:18;a:7:{s:4:"name";s:17:"permissions_field";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:85:"The field that specifies the permissions ID to check category access for (null: none)";s:11:"phpdoc_name";s:17:"permissions_field";}i:19;a:7:{s:4:"name";s:27:"permissions_field_is_string";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the permissions field is a string";s:11:"phpdoc_name";s:27:"permissions_field_is_string";}}s:4:"name";s:15:"get_search_rows";s:11:"description";s:76:"Get some rows, queried from the database according to the search parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"The rows found";}}s:23:"_boolean_search_prepare";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"search_filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The search string";s:11:"phpdoc_name";s:13:"search_filter";}}s:4:"name";s:23:"_boolean_search_prepare";s:11:"description";s:64:"Take a search string and find boolean search parameters from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:105:"Words to search under the boolean operator, words that must be included, words that must not be included.";}}s:22:"in_memory_search_match";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:124:"A map of POST data in search-form style. May contain 'only_titles', 'content' (the critical one!) and 'conjunctive_operator'";s:11:"phpdoc_name";s:6:"filter";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The title to try and match";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:4:"post";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:"The post to try and match (null: not used)";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:22:"in_memory_search_match";s:11:"description";s:65:"Perform a database-style in-memory boolean search on single item.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether we have a match";}}s:19:"build_content_where";a:6:{s:8:"filename";s:27:"sources/database_search.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:6:"string";s:11:"description";s:18:"The search content";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether it's a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}i:2;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:24:"Boolean operation to use";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"AND OR";}i:3;a:7:{s:4:"name";s:13:"full_coverage";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether we can assume we require full coverage (i.e. not substring matches)";s:11:"phpdoc_name";s:13:"full_coverage";}}s:4:"name";s:19:"build_content_where";s:11:"description";s:55:"Build a fulltext query WHERE clause from given content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:170:"A tuple (any SQL component may be blank): The combined where clause SQL, the boolean operator, body where clause SQL, positive where clause SQL, negative where clause SQL";}}s:16:"db_like_assemble";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:3:{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:21:"Boolean search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:8:{s:4:"name";s:16:"boolean_operator";s:7:"default";s:3:"AND";s:11:"default_raw";s:5:"'AND'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Boolean operator to use";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"AND OR";}i:2;a:7:{s:4:"name";s:13:"full_coverage";s:7:"default";s:13:"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:"Whether we can assume we require full coverage";s:11:"phpdoc_name";s:13:"full_coverage";}}s:4:"name";s:16:"db_like_assemble";s:11:"description";s:34:"Generate SQL for a boolean search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:170:"A tuple (any SQL component may be blank): The combined where clause SQL, the boolean operator, body where clause SQL, positive where clause SQL, negative where clause SQL";}}s:19:"sort_search_results";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"hook_results";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:59:"Search results from the search hook, assumed already sorted";s:11:"phpdoc_name";s:12:"hook_results";}i:1;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:51:"Existing array of results (originally starts blank)";s:11:"phpdoc_name";s:7:"results";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Sort direction";s:11:"phpdoc_name";s:9:"direction";}}s:4:"name";s:19:"sort_search_results";s:11:"description";s:51:"Sort search results as returned by the search hook.";s:5:"flags";a:0:{}s:6:"return";a:3:{s:4:"type";s:5:"array";s:11:"description";s:14:"Sorted results";s:3:"set";s:8:"ASC DESC";}}s:30:"build_search_results_interface";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Search results";s:11:"phpdoc_name";s:7:"results";}i:1;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Start index";s:11:"phpdoc_name";s:5:"start";}i:2;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Maximum index";s:11:"phpdoc_name";s:3:"max";}i:3;a:6:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Sort direction";s:11:"phpdoc_name";s:9:"direction";s:3:"set";s:8:"ASC DESC";}i:4;a:7:{s:4:"name";s:14:"general_search";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:103:"Whether this is a general search, rather than a search for a specific result-type (such as all members)";s:11:"phpdoc_name";s:14:"general_search";}}s:4:"name";s:30:"build_search_results_interface";s:11:"description";s:64:"Build a templated list of the given search results, for viewing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"Interface";}}s:30:"init__database_security_filter";a:5:{s:8:"filename";s:36:"sources/database_security_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"init__database_security_filter";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"is_simple_query";a:6:{s:8:"filename";s:36:"sources/database_security_filter.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:9:"The query";s:11:"phpdoc_name";s:5:"query";}}s:4:"name";s:15:"is_simple_query";s:11:"description";s:53:"Find if a query is a simple one involving 'AND' maps.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:20:"Whether it is simple";}}s:23:"has_escaped_dynamic_sql";a:6:{s:8:"filename";s:36:"sources/database_security_filter.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:9:"The query";s:11:"phpdoc_name";s:5:"query";}}s:4:"name";s:23:"has_escaped_dynamic_sql";s:11:"description";s:92:"Check all strings within a query were properly escaped (by checking log of what we escaped).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether it is all good";}}s:22:"_get_quoted_substrings";a:6:{s:8:"filename";s:36:"sources/database_security_filter.php";s:10:"parameters";a:2:{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:9:"The query";s:11:"phpdoc_name";s:6:"string";}i:1;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:40:"Whether to recurse (for double escaping)";s:11:"phpdoc_name";s:7:"recurse";}}s:4:"name";s:22:"_get_quoted_substrings";s:11:"description";s:42:"Find the quoted substrings within a query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"List of substrings";}}s:23:"_trim_quoted_substrings";a:6:{s:8:"filename";s:36:"sources/database_security_filter.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:12:"Input string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:23:"_trim_quoted_substrings";s:11:"description";s:102:"Blank out substrings within a query, which makes it easier to analyse (no need to consider escapings).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Simplified substring";}}s:10:"deep_clean";a:6:{s:8:"filename";s:22:"sources/deep_clean.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"d";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Input";s:11:"phpdoc_name";s:1:"d";}i:1;a:7:{s:4:"name";s:7:"heading";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:58:"Heading to not allow to be repeated at start (blank: none)";s:11:"phpdoc_name";s:7:"heading";}}s:4:"name";s:10:"deep_clean";s:11:"description";s:67:"Clean common ugliness from some text. E.g. copy and paste problems.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Output";}}s:14:"column_cleanup";a:5:{s:8:"filename";s:22:"sources/deep_clean.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:14:"Comcode / HTML";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:14:"column_cleanup";s:11:"description";s:72:"Remove forced columnisation (word-wrapping). Useful if pasted from PDFs.";s:5:"flags";a:0:{}}s:21:"init__developer_tools";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"init__developer_tools";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:21:"semi_dev_mode_startup";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"semi_dev_mode_startup";s:11:"description";s:59:"Run some routines needed for semi-dev-mode, during startup.";s:5:"flags";a:0:{}}s:19:"dev_mode_aftertests";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"dev_mode_aftertests";s:11:"description";s:68:"Run after-tests for dev mode, to make sure coding standards are met.";s:5:"flags";a:0:{}}s:11:"destrictify";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:19:"change_content_type";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether to also set the content type to plain-HTML";s:11:"phpdoc_name";s:19:"change_content_type";}i:1;a:7:{s:4:"name";s:9:"mysql_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:70:"Whether to destrictify MySQL commands over the Composr database driver";s:11:"phpdoc_name";s:9:"mysql_too";}}s:4:"name";s:11:"destrictify";s:11:"description";s:69:"Remove Composr's strictness, to help integration of third-party code.";s:5:"flags";a:0:{}}s:11:"restrictify";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"restrictify";s:11:"description";s:120:"Add Composr's strictness, after finishing with third-party code. To be run optionally at some point after destrictify().";s:5:"flags";a:0:{}}s:7:"inspect";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"inspect";s:11:"description";s:151:"Output whatever arguments are given for debugging. If possible it'll output with plain text, but if output has already started it will attach messages.";s:5:"flags";a:0:{}}s:13:"inspect_plain";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"inspect_plain";s:11:"description";s:168:"Output whatever arguments are given for debugging as text and exit. If possible it'll output with plain text, but if output has already started it will attach messages.";s:5:"flags";a:0:{}}s:8:"_inspect";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"args";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Arguments to output";s:11:"phpdoc_name";s:4:"args";}i:1;a:7:{s:4:"name";s:11:"force_plain";s:7:"default";s:13:"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 force text output";s:11:"phpdoc_name";s:11:"force_plain";}}s:4:"name";s:8:"_inspect";s:11:"description";s:151:"Output whatever arguments are given for debugging. If possible it'll output with plain text, but if output has already started it will attach messages.";s:5:"flags";a:0:{}}s:18:"memory_trace_point";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:4:"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:57:"The name of the memory point (null: use a simple counter)";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:18:"memory_trace_point";s:11:"description";s:38:"Record the memory usage at this point.";s:5:"flags";a:0:{}}s:18:"show_memory_points";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"show_memory_points";s:11:"description";s:46:"Output whatever memory points we collected up.";s:5:"flags";a:0:{}}s:28:"cms_verify_parameters_phpdoc";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"dev_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 to only run the checks in dev-mode";s:11:"phpdoc_name";s:8:"dev_only";}}s:4:"name";s:28:"cms_verify_parameters_phpdoc";s:11:"description";s:309:"Verify the parameters passed into the *calling* function match the phpdoc specification for that function.Useful when testing robustness of APIs where the CQC and ocProducts PHP are not suitable.For example, when web APIs are plumbed into Composr APIs and you need to ensure the types are coming in correctly.";s:5:"flags";a:0:{}}s:15:"init__downloads";a:5:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__downloads";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"download_licence_script";a:5:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"download_licence_script";s:11:"description";s:35:"Show a download licence for display";s:5:"flags";a:0:{}}s:19:"render_download_box";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:8:{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:39:"The database field row of this download";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:3:"pic";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether to show a picture";s:11:"phpdoc_name";s:3:"pic";}i:2;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to show breadcrumbs";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:3;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:62:"The zone the download module we're using is in (null: find it)";s:11:"phpdoc_name";s:4:"zone";}i:4;a:7:{s:4:"name";s:12:"text_summary";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:97:"Text summary for result (e.g. highlighted portion of actual file from search result) (null: none)";s:11:"phpdoc_name";s:12:"text_summary";}i:5;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:6;a:7:{s:4:"name";s:4:"root";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:46:"The virtual root (null: read from environment)";s:11:"phpdoc_name";s:4:"root";}i:7;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:19:"render_download_box";s:11:"description";s:59:"Get Tempcode for a download 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:58:"A box for this download, linking to the full download page";}}s:28:"render_download_category_box";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:7:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:28:"render_download_category_box";s:11:"description";s:68:"Get Tempcode for a download category 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:36:"create_selection_list_downloads_tree";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:5:{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:10:"?AUTO_LINK";s:11:"description";s:50:"The currently selected entry (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:60:"Only show entries submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}i:2;a:7:{s:4:"name";s:4:"shun";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:"Download we do not want to show (null: none to not show)";s:11:"phpdoc_name";s:4:"shun";}i:3;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether to get a list of child categories (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:4;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:36:"create_selection_list_downloads_tree";s:11:"description";s:73:"Get a nice, formatted XHTML list of downloads, in download tree structure";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The list of entries";}}s:18:"get_downloads_tree";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:9:{i:0;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:66:"Only show images/videos submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}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:65:"The category being at the root of our recursion (null: true root)";s:11:"phpdoc_name";s:11:"category_id";}i:2;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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:3;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:8:"?ID_TEXT";s:11:"description";s:184:"The name of the $category_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:5:"title";}i:4;a:7:{s:4:"name";s:4:"shun";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:4:"shun";}i:5;a:7:{s:4:"name";s:6:"levels";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:"Download we do not want to show (null: none to not show)";s:11:"phpdoc_name";s:6:"levels";}i:6;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether to get a list of child categories (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:7;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}i:8;a:7:{s:4:"name";s:10:"tar_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:56:"Whether to only show entries that are TAR files (addons)";s:11:"phpdoc_name";s:10:"tar_filter";}}s:4:"name";s:18:"get_downloads_tree";s:11:"description";s:136:"Get a list of maps containing all the downloads, and path information, under the specified category - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:298:"A list of maps for all categories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (to the category, including the categories own title), and more. Or if $use_compound_list, the tree structure built with pairs containing the compound list in addition to the child branches";}}s:44:"create_selection_list_download_category_tree";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:4:{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:10:"?AUTO_LINK";s:11:"description";s:53:"The currently selected category (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to make the list elements store comma-separated child lists instead of IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:2;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:3;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:44:"create_selection_list_download_category_tree";s:11:"description";s:237:"Get a nice, formatted XHTML list extending from the root, and showing all subcategories, and their subcategories (ad infinitum). The tree bit is because each entry in the list is shown to include the path through the tree that gets to it";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The list of categories";}}s:26:"get_download_category_tree";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:7:{i:0;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:74:"The category being at the root of our recursion (null: true root category)";s:11:"phpdoc_name";s:11:"category_id";}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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:2;a:7:{s:4:"name";s:13:"category_info";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:194:"The category row of the $category_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs details";s:11:"phpdoc_name";s:13:"category_info";}i:3;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 collect download counts with our tree information";s:11:"phpdoc_name";s:8:"do_stats";}i:4;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether to make a compound list (a pair of a comma-separated list of children, and the child array)";s:11:"phpdoc_name";s:17:"use_compound_list";}i:5;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:6;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}}s:4:"name";s:26:"get_download_category_tree";s:11:"description";s:137:"Get a list of maps containing all the subcategories, and path information, of the specified category - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:245:"A list of maps for all subcategories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (path to the category, including the categories own title). There is also an additional 'downloadcount' entry if stats were requested";}}s:39:"create_selection_list_download_licences";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:52:"The currently selected licence (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:8:"allow_na";s:7:"default";s:13:"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 allow an N/A selection";s:11:"phpdoc_name";s:8:"allow_na";}}s:4:"name";s:39:"create_selection_list_download_licences";s:11:"description";s:61:"Get a nice, formatted XHTML list to select a download licence";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The list of categories";}}s:20:"download_breadcrumbs";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:31:"The category we are finding for";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:7:{s:4:"name";s:4:"root";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:42:"The root of the tree (null: the true root)";s:11:"phpdoc_name";s:4:"root";}i:2;a:7:{s:4:"name";s:18:"no_link_for_me_sir";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether to include category links at this level (the recursed levels will always contain links - the top level is optional, hence this parameter)";s:11:"phpdoc_name";s:18:"no_link_for_me_sir";}i:3;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:62:"The zone the download module we're using is in (null: find it)";s:11:"phpdoc_name";s:4:"zone";}i:4;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}}s:4:"name";s:20:"download_breadcrumbs";s:11:"description";s:98:"Get a formatted XHTML string of the route back to the specified root, from the specified category.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The breadcrumb segments";}}s:32:"count_download_category_children";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:60:"The ID of the category for which count details are collected";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:32:"count_download_category_children";s:11:"description";s:85:"Count the downloads and subcategories underneath the specified category, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:235:"The number of downloads is returned in $output['num_downloads'], and the number of subcategories is returned in $output['num_children'], and the (possibly recursive) number of downloads is returned in $output['num_downloads_children'].";}}s:18:"generate_dload_url";a:6:{s:8:"filename";s:21:"sources/downloads.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:39:"The ID of the download to be downloaded";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:11:"use_gateway";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to use the gateway script";s:11:"phpdoc_name";s:11:"use_gateway";}}s:4:"name";s:18:"generate_dload_url";s:11:"description";s:38:"Generate a link to a Composr download.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The URL";}}s:16:"init__downloads2";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__downloads2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"download_gateway_script";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"download_gateway_script";s:11:"description";s:33:"Farm out the files for downloads.";s:5:"flags";a:0:{}}s:12:"dload_script";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"dload_script";s:11:"description";s:33:"Farm out the files for downloads.";s:5:"flags";a:0:{}}s:21:"add_download_category";a:6:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:8:"category";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:1;a:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:28:"The parent download category";s:11:"phpdoc_name";s:9:"parent_id";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:13:"A description";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:49:"Hidden notes pertaining to this download category";s:11:"phpdoc_name";s:5:"notes";}i:4;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:55:"The representative image for the category (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"add_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:20:"Add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:7;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:8;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:21:"add_download_category";s:11:"description";s:23:"Add a download category";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:43:"The ID of the newly added download category";}}s:22:"edit_download_category";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"The ID of the category being edited";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:5:{s:4:"name";s:8:"category";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:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:28:"The parent download category";s:11:"phpdoc_name";s:9:"parent_id";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:13:"A description";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:49:"Hidden notes pertaining to this download category";s:11:"phpdoc_name";s:5:"notes";}i:5;a:5:{s:4:"name";s:9:"rep_image";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:55:"The representative image for the category (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:6;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:51:"Meta keywords for this resource (null: do not edit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:7;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:54:"Meta description for this resource (null: do not edit)";s:11:"phpdoc_name";s:16:"meta_description";}i:8;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}}s:4:"name";s:22:"edit_download_category";s:11:"description";s:59:"Edit the given download category with the new details given";s:5:"flags";a:0:{}}s:24:"delete_download_category";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:31:"The download category to delete";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:24:"delete_download_category";s:11:"description";s:27:"Delete a download category.";s:5:"flags";a:0:{}}s:16:"create_data_mash";a:6:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:4:{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:66:"The URL to make a data-mash of, or a filename if $data isn't blank";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:4:"data";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:20:"Data (null: use URL)";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:9:"extension";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:35:"File extension (null: get from URL)";s:11:"phpdoc_name";s:9:"extension";}i:3;a:7:{s:4:"name";s:11:"direct_path";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether a direct file path was given instead of a URL";s:11:"phpdoc_name";s:11:"direct_path";}}s:4:"name";s:16:"create_data_mash";s:11:"description";s:85:"Create a data-mash from the file at a URL. This is data useful for the search engine.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:13:"The data-mash";}}s:24:"_is_valid_data_mash_char";a:6:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ch";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:17:"Character to test";s:11:"phpdoc_name";s:2:"ch";}}s:4:"name";s:24:"_is_valid_data_mash_char";s:11:"description";s:57:"Find if a character is basically a part of a text string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether the character is valid";}}s:12:"add_download";a:6:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:27:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:47:"The ID of the category the download is to be in";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:5:{s:4:"name";s:4:"name";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:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"The URL to the download";s:11:"phpdoc_name";s:3:"url";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:31:"The description of the download";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:66:"The author of the download (not necessarily same as the submitter)";s:11:"phpdoc_name";s:6:"author";}i:5;a:5:{s:4:"name";s:18:"additional_details";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:46:"The supplementary description for the download";s:11:"phpdoc_name";s:18:"additional_details";}i:6;a:5:{s:4:"name";s:11:"out_mode_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:289:"The out-mode-id (the ID of a download that this download is an old version of). Often people wonder why this is specified with the old version, and not the opposite with the new version - it is because statistically, we perceive more chance of downloads merging than splitting (null: none)";s:11:"phpdoc_name";s:11:"out_mode_id";}i:7;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the download has been validated";s:11:"phpdoc_name";s:9:"validated";}i:8;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the download may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:9;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:10;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the download may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:11;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:39:"Hidden notes pertaining to the download";s:11:"phpdoc_name";s:5:"notes";}i:12;a:5:{s:4:"name";s:17:"original_filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:59:"The downloads original filename (the URL may be obfuscated)";s:11:"phpdoc_name";s:17:"original_filename";}i:13;a:5:{s:4:"name";s:9:"file_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:88:"The file size of the download (we can't really detect this in real-time for remote URLs)";s:11:"phpdoc_name";s:9:"file_size";}i:14;a:5:{s:4:"name";s:4:"cost";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:64:"The cost of the download that members will have to pay to get it";s:11:"phpdoc_name";s:4:"cost";}i:15;a:5:{s:4:"name";s:21:"submitter_gets_points";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:188:"Whether the submitter gets the points for the download (they are selling it) (otherwise they are just thrown out, which is an alternative model - one of enforcing community point building)";s:11:"phpdoc_name";s:21:"submitter_gets_points";}i:16;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:17;a:7:{s:4:"name";s:8:"add_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:41:"The add date for the download (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:18;a:7:{s:4:"name";s:13:"num_downloads";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:50:"The number of downloads that this download has had";s:11:"phpdoc_name";s:13:"num_downloads";}i:19;a:7:{s:4:"name";s:5:"views";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:46:"The number of views that this download has had";s:11:"phpdoc_name";s:5:"views";}i:20;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:34:"The submitter (null: current user)";s:11:"phpdoc_name";s:9:"submitter";}i:21;a:7:{s:4:"name";s:9:"edit_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:27:"The edit date (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:22;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:23;a:7:{s:4:"name";s:13:"meta_keywords";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:"Meta keywords for this resource (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:24;a:7:{s:4:"name";s:16:"meta_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:52:"Meta description for this resource (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:25;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:83:"The ordered number of the gallery image to use as the download representative image";s:11:"phpdoc_name";s:11:"default_pic";}i:26;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:12:"add_download";s:11:"description";s:15:"Add a download.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the newly added download";}}s:32:"set_download_gallery_permissions";a:5:{s:8:"filename";s:22:"sources/downloads2.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:10:"?AUTO_LINK";s:11:"description";s:51:"The ID of the download (null: lookup from download)";s:11:"phpdoc_name";s:2:"id";}i:1;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 submitter (null: work out automatically)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:32:"set_download_gallery_permissions";s:11:"description";s:43:"Set the permissions for a download gallery.";s:5:"flags";a:0:{}}s:13:"edit_download";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:28:{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:30:"The ID of the download to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:47:"The ID of the category the download is to be in";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:5:{s:4:"name";s:4:"name";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:3;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"The URL to the download";s:11:"phpdoc_name";s:3:"url";}i:4;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:31:"The description of the download";s:11:"phpdoc_name";s:11:"description";}i:5;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:66:"The author of the download (not necessarily same as the submitter)";s:11:"phpdoc_name";s:6:"author";}i:6;a:5:{s:4:"name";s:18:"additional_details";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:46:"The supplementary description for the download";s:11:"phpdoc_name";s:18:"additional_details";}i:7;a:5:{s:4:"name";s:11:"out_mode_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:289:"The out-mode-id (the ID of a download that this download is an old version of). Often people wonder why this is specified with the old version, and not the opposite with the new version - it is because statistically, we perceive more chance of downloads merging than splitting (null: none)";s:11:"phpdoc_name";s:11:"out_mode_id";}i:8;a:5:{s:4:"name";s:11:"default_pic";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:83:"The ordered number of the gallery image to use as the download representative image";s:11:"phpdoc_name";s:11:"default_pic";}i:9;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the download has been validated";s:11:"phpdoc_name";s:9:"validated";}i:10;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the download may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:11;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:12;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the download may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:13;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:39:"Hidden notes pertaining to the download";s:11:"phpdoc_name";s:5:"notes";}i:14;a:5:{s:4:"name";s:17:"original_filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:59:"The downloads original filename (the URL may be obfuscated)";s:11:"phpdoc_name";s:17:"original_filename";}i:15;a:5:{s:4:"name";s:9:"file_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:88:"The file size of the download (we can't really detect this in real-time for remote URLs)";s:11:"phpdoc_name";s:9:"file_size";}i:16;a:5:{s:4:"name";s:4:"cost";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:64:"The cost of the download that members will have to pay to get it";s:11:"phpdoc_name";s:4:"cost";}i:17;a:5:{s:4:"name";s:21:"submitter_gets_points";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:188:"Whether the submitter gets the points for the download (they are selling it) (otherwise they are just thrown out, which is an alternative model - one of enforcing community point building)";s:11:"phpdoc_name";s:21:"submitter_gets_points";}i:18;a:5:{s:4:"name";s:7:"licence";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:19;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:20;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:21;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:22;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:23;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:24;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:25;a:7:{s:4:"name";s:13:"num_downloads";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:72:"The number of downloads that this download has had (null: do not change)";s:11:"phpdoc_name";s:13:"num_downloads";}i:26;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}i:27;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:13:"edit_download";s:11:"description";s:16:"Edit a download.";s:5:"flags";a:0:{}}s:15:"delete_download";a:5:{s:8:"filename";s:22:"sources/downloads2.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:32:"The ID of the download to delete";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"leave";s:7:"default";s:13:"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 leave the actual file behind";s:11:"phpdoc_name";s:5:"leave";}}s:4:"name";s:15:"delete_download";s:11:"description";s:18:"Delete a download.";s:5:"flags";a:0:{}}s:20:"add_download_licence";a:6:{s:8:"filename";s:22:"sources/downloads2.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:10:"SHORT_TEXT";s:11:"description";s:33:"The title of the download licence";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The text of the download licence";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:20:"add_download_licence";s:11:"description";s:23:"Add a download licence.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the new download licence";}}s:21:"edit_download_licence";a:5:{s:8:"filename";s:22:"sources/downloads2.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:38:"The ID of the download licence to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The title of the download licence";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The text of the download licence";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:21:"edit_download_licence";s:11:"description";s:24:"Edit a download licence.";s:5:"flags";a:0:{}}s:23:"delete_download_licence";a:5:{s:8:"filename";s:22:"sources/downloads2.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:40:"The ID of the download licence to delete";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:23:"delete_download_licence";s:11:"description";s:26:"Delete a download licence.";s:5:"flags";a:0:{}}s:12:"log_download";a:5:{s:8:"filename";s:22:"sources/downloads2.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:39:"The ID of the download being downloaded";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:149:"The size of the download (if zero, no bandwidth will be done - zero implies either an empty file, or a remote file that doesn't affect our bandwidth)";s:11:"phpdoc_name";s:4:"size";}i:2;a:5:{s:4:"name";s:10:"got_before";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the download has been downloaded before";s:11:"phpdoc_name";s:10:"got_before";}}s:4:"name";s:12:"log_download";s:11:"description";s:85:"Log a file download, update the downloads counter and the download bandwidth counter.";s:5:"flags";a:0:{}}s:22:"get_download_bandwidth";a:6:{s:8:"filename";s:27:"sources/downloads_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_download_bandwidth";s:11:"description";s:42:"Get the currently used download bandwidth.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:47:"The currently used download bandwidth (forever)";}}s:25:"get_download_archive_size";a:6:{s:8:"filename";s:27:"sources/downloads_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_download_archive_size";s:11:"description";s:82:"Get the total size of all the currently available downloads in a formatted string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:55:"The total size of all the currently available downloads";}}s:25:"get_num_archive_downloads";a:6:{s:8:"filename";s:27:"sources/downloads_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_num_archive_downloads";s:11:"description";s:44:"Get the total number of downloads available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:39:"The total number of downloads available";}}s:28:"get_num_downloads_downloaded";a:6:{s:8:"filename";s:27:"sources/downloads_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"get_num_downloads_downloaded";s:11:"description";s:60:"Get the total number of files downloaded since installation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:55:"The total number of files downloaded since installation";}}s:15:"init__ecommerce";a:5:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__ecommerce";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"ecommerce_test_mode";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"ecommerce_test_mode";s:11:"description";s:57:"Check whether the system is in test mode (normally, not).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:29:"ecommerce_get_currency_symbol";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"currency";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:"The currency (null: configured).";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:29:"ecommerce_get_currency_symbol";s:11:"description";s:48:"Get the symbol of the currency we're trading in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency symbol.";}}s:27:"get_transaction_form_fields";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"trans_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:40:"The transaction ID (null: auto-generate)";s:11:"phpdoc_name";s:8:"trans_id";}i:1;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The purchase ID";s:11:"phpdoc_name";s:11:"purchase_id";}i:2;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The item name";s:11:"phpdoc_name";s:9:"item_name";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:10:"The amount";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The currency";s:11:"phpdoc_name";s:8:"currency";}i:5;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:37:"The length (null: not a subscription)";s:11:"phpdoc_name";s:6:"length";}i:6;a:5:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The length units";s:11:"phpdoc_name";s:12:"length_units";}i:7;a:7:{s:4:"name";s:3:"via";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 service the payment will go via via (null: autodetect).";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:27:"get_transaction_form_fields";s:11:"description";s:28:"Get transaction form fields.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A pair: The form fields, Hidden fields";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:1;a:5:{s:4:"name";s:3:"via";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The service the payment went via.";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:7:"The fee";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:6:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}i:5;a:7:{s:4:"name";s:3:"via";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 service the payment will go via via (null: autodetect).";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:8:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}i:7;a:7:{s:4:"name";s:3:"via";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 service the payment will go via via (null: autodetect).";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:1;a:5:{s:4:"name";s:3:"via";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"The service the payment will go via via.";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:116:"The button (null: no special cancellation -- just delete the subscription row to stop Composr regularly re-charging)";}}s:25:"send_invoice_notification";a:5:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{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:22:"The member to send to.";s:11:"phpdoc_name";s:9:"member_id";}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:15:"The invoice ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:25:"send_invoice_notification";s:11:"description";s:41:"Send an invoice notification to a member.";s:5:"flags";a:0:{}}s:17:"find_all_products";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:17:"find_all_products";s:11:"description";s:127:"Find all products, except ones from hooks that might have too many to list (so don't rely on this for important backend tasks).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"A list of maps of product details.";}}s:12:"find_product";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"search";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The item name/product codename";s:11:"phpdoc_name";s:6:"search";}i:1;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}i:2;a:7:{s:4:"name";s:17:"search_item_names";s:7:"default";s:13:"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 $search refers to the item name rather than the product codename";s:11:"phpdoc_name";s:17:"search_item_names";}}s:4:"name";s:12:"find_product";s:11:"description";s:13:"Find product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:43:"The product-class object (null: not found).";}}s:16:"find_product_row";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"search";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The product codename/item name";s:11:"phpdoc_name";s:6:"search";}i:1;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}i:2;a:7:{s:4:"name";s:17:"search_item_names";s:7:"default";s:13:"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 $search refers to the item name rather than the product codename";s:11:"phpdoc_name";s:17:"search_item_names";}}s:4:"name";s:16:"find_product_row";s:11:"description";s:22:"Find product info row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:89:"A pair: The product-class map, and the product codename (both will be null if not found).";}}s:21:"perform_local_payment";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"perform_local_payment";s:11:"description";s:45:"Find whether local payment will be performed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether local payment will be performed.";}}s:14:"dev__ipn_debug";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"ipn_target";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:18:"URL to send IPN to";s:11:"phpdoc_name";s:10:"ipn_target";}i:1;a:5:{s:4:"name";s:11:"ipn_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:47:"Post parameters to send, in query string format";s:11:"phpdoc_name";s:11:"ipn_message";}}s:4:"name";s:14:"dev__ipn_debug";s:11:"description";s:299:"Send an IPN call to a remote host for debugging purposes.Useful for making one Composr site (caller site) pretend to be PayPal, when talking to another (target site).Make sure the target site has the caller site listed as the backdoor_ip in the base config, or the verification will happen and fail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Output";}}s:25:"handle_transaction_script";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"handle_transaction_script";s:11:"description";s:13:"Handle IPN's.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:144:"The ID of the purchase-type (meaning depends on item_name) (null: no transaction; will only return null when not running the 'ecommerce' script)";}}s:28:"handle_confirmed_transaction";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:58:"The ID of the purchase-type (meaning depends on item_name)";s:11:"phpdoc_name";s:11:"purchase_id";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:376:"The item being purchased (aka the product) (blank: subscription, so we need to look it up). One might wonder why we use $item_name instead of $type_code. This is because we pass human-readable-names (hopefully unique!!!) through payment gateways because they are visually shown to the user. (blank: it's a subscription, so look up via a key map across the subscriptions table)";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:6:{s:4:"name";s:14:"payment_status";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The status this transaction is telling of";s:11:"phpdoc_name";s:14:"payment_status";s:3:"set";s:38:"Pending Completed SModified SCancelled";}i:3;a:5:{s:4:"name";s:11:"reason_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:40:"The code that gives reason to the status";s:11:"phpdoc_name";s:11:"reason_code";}i:4;a:5:{s:4:"name";s:14:"pending_reason";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:45:"The reason it is in pending status (if it is)";s:11:"phpdoc_name";s:14:"pending_reason";}i:5;a:5:{s:4:"name";s:4:"memo";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:34:"A note attached to the transaction";s:11:"phpdoc_name";s:4:"memo";}i:6;a:5:{s:4:"name";s:8:"mc_gross";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"The amount of money";s:11:"phpdoc_name";s:8:"mc_gross";}i:7;a:5:{s:4:"name";s:11:"mc_currency";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:29:"The currency the amount is in";s:11:"phpdoc_name";s:11:"mc_currency";}i:8;a:5:{s:4:"name";s:6:"txn_id";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The transaction ID";s:11:"phpdoc_name";s:6:"txn_id";}i:9;a:5:{s:4:"name";s:13:"parent_txn_id";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:32:"The ID of the parent transaction";s:11:"phpdoc_name";s:13:"parent_txn_id";}i:10;a:5:{s:4:"name";s:6:"period";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:79:"The subscription period (blank: N/A / unknown: trust is correct on the gateway)";s:11:"phpdoc_name";s:6:"period";}i:11;a:5:{s:4:"name";s:3:"via";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"The payment gateway";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:28:"handle_confirmed_transaction";s:11:"description";s:65:"Handle IPN's that have been confirmed as backed up by real money.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The product purchased (null: error)";}}s:14:"fatal_ipn_exit";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"error";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The message.";s:11:"phpdoc_name";s:5:"error";}i:1;a:7:{s:4:"name";s:12:"dont_trigger";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Dont trigger an error";s:11:"phpdoc_name";s:12:"dont_trigger";}}s:4:"name";s:14:"fatal_ipn_exit";s:11:"description";s:45:"Exit Composr and write to the error log file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:24:"make_cart_payment_button";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{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";}i:1;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_cart_payment_button";s:11:"description";s:36:"Make a shopping cart payment button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:26:"add_usergroup_subscription";a:6:{s:8:"filename";s:22:"sources/ecommerce2.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:4:"cost";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:5:{s:4:"name";s:6:"length";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:6:{s:4:"name";s:12:"length_units";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:5:{s:4:"name";s:10:"auto_recur";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:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:49:"The usergroup that purchasing gains membership to";s:11:"phpdoc_name";s:8:"group_id";}i:7;a:5:{s:4:"name";s:12:"uses_primary";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:5:{s:4:"name";s:7:"enabled";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:5:{s:4:"name";s:10:"mail_start";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:5:{s:4:"name";s:8:"mail_end";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:5:{s:4:"name";s:9:"mail_uhoh";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";}}s:4:"name";s:26:"add_usergroup_subscription";s:11:"description";s:29:"Add a usergroup subscription.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:27:"edit_usergroup_subscription";a:5:{s:8:"filename";s:22:"sources/ecommerce2.php";s:10:"parameters";a:14:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:4:"cost";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:4;a:5:{s:4:"name";s:6:"length";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:5;a:6:{s:4:"name";s:12:"length_units";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:6;a:5:{s:4:"name";s:10:"auto_recur";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:7;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:49:"The usergroup that purchasing gains membership to";s:11:"phpdoc_name";s:8:"group_id";}i:8;a:5:{s:4:"name";s:12:"uses_primary";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:9;a:5:{s:4:"name";s:7:"enabled";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:10;a:5:{s:4:"name";s:10:"mail_start";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:11;a:5:{s:4:"name";s:8:"mail_end";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:12;a:5:{s:4:"name";s:9:"mail_uhoh";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:13;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:43:"Other e-mails to send (null: do not change)";s:11:"phpdoc_name";s:5:"mails";}}s:4:"name";s:27:"edit_usergroup_subscription";s:11:"description";s:30:"Edit a usergroup subscription.";s:5:"flags";a:0:{}}s:29:"delete_usergroup_subscription";a:5:{s:8:"filename";s:22:"sources/ecommerce2.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:9:"uhoh_mail";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:47:"The cancellation mail to send out (blank: none)";s:11:"phpdoc_name";s:9:"uhoh_mail";}}s:4:"name";s:29:"delete_usergroup_subscription";s:11:"description";s:32:"Delete a usergroup subscription.";s:5:"flags";a:0:{}}s:25:"find_member_subscriptions";a:6:{s:8:"filename";s:35:"sources/ecommerce_subscriptions.php";s:10:"parameters";a:2:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:28:"usergroup_subscriptions_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:47:"Whether to limit us to usergroup subscriptions.";s:11:"phpdoc_name";s:28:"usergroup_subscriptions_only";}}s:4:"name";s:25:"find_member_subscriptions";s:11:"description";s:26:"Find member subscriptions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"A list of subscriptions and subscription lifetime positions.";}}s:30:"prepare_templated_subscription";a:6:{s:8:"filename";s:35:"sources/ecommerce_subscriptions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"subscription";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Subscription details.";s:11:"phpdoc_name";s:12:"subscription";}}s:4:"name";s:30:"prepare_templated_subscription";s:11:"description";s:60:"Get template-ready parameters for displaying a subscription.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"Template-ready parameters.";}}s:23:"is_encryption_available";a:6:{s:8:"filename";s:22:"sources/encryption.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"is_encryption_available";s:11:"description";s:156:"Determine whether the necessary PHP extensions to support encryption are available. For normal use, you should probably use is_encryption_enabled() instead.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:21:"Encryption available?";}}s:21:"is_encryption_enabled";a:6:{s:8:"filename";s:22:"sources/encryption.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"is_encryption_enabled";s:11:"description";s:115:"Determine whether encryption support is available and enabled in the site's preferences, and the keys are in place.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Encryption enabled?";}}s:12:"encrypt_data";a:6:{s:8:"filename";s:22:"sources/encryption.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:20:"Data to be encrypted";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:12:"encrypt_data";s:11:"description";s:460:"Encrypt some data using asymmetric encryption and the site's public key. This will return the original data if encryption is disabled. It will add a magic marker to the start of the returned string to show it's been encrypted.A fatal error will occur if the public key cannot be found, or if encryption fails for whatever reason.Note that this will blindly re-encrypt data which has already been encrypted. You should check data with is_data_encrypted() first.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:33:"Encrypted data, with magic marker";}}s:17:"is_data_encrypted";a:6:{s:8:"filename";s:22:"sources/encryption.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:13:"Data to check";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:17:"is_data_encrypted";s:11:"description";s:92:"Determine if some data has already been encrypted: i.e. if it has a magic encryption marker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"Encrypted?";}}s:30:"remove_magic_encryption_marker";a:6:{s:8:"filename";s:22:"sources/encryption.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:4:"Data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:30:"remove_magic_encryption_marker";s:11:"description";s:260:"Remove the magic encryption marker from some data. This should be used if the data is to be displayed or presented for editing, but not if it's to be put in the database.If the data does not have a magic encryption marker, the original string will be returned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"Data, without the magic marker";}}s:12:"decrypt_data";a:6:{s:8:"filename";s:22:"sources/encryption.php";s:10:"parameters";a:2:{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:20:"Data to be decrypted";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:10:"passphrase";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"Passphrase to unlock the site's private key";s:11:"phpdoc_name";s:10:"passphrase";}}s:4:"name";s:12:"decrypt_data";s:11:"description";s:228:"Decrypt data using asymmetric encryption, and the site's private key (as unlocked by the given passphrase).A fatal error will occur if the passphrase is empty, the key cannot be found, or if decryption fails for whatever reason.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Decrypted data";}}s:15:"endpoint_script";a:5:{s:8:"filename";s:21:"sources/endpoints.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"endpoint_script";s:11:"description";s:26:"Endpoint API entry script.";s:5:"flags";a:0:{}}s:13:"get_exif_data";a:6:{s:8:"filename";s:16:"sources/exif.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:56:"This is the path of the photo which may contain metadata";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:8:"filename";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:94:"This is the original filename of the photo which may contain metadata (null: derive from path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:13:"get_exif_data";s:11:"description";s:172:"Get metadata from an image, using EXIF primarily, but also XMP and IPTC to get image descriptions.Also gets GPS data and canonicalises in decimal as Latitude and Longitude.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:43:"Map of metadata, using standard EXIF naming";}}s:15:"_get_simple_gps";a:6:{s:8:"filename";s:16:"sources/exif.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"exif";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"EXIF data";s:11:"phpdoc_name";s:4:"exif";}}s:4:"name";s:15:"_get_simple_gps";s:11:"description";s:69:"Work out canonical Latitude/Longitude details from complex EXIF bits.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Extra derived EXIF data";}}s:22:"get_exif_image_caption";a:6:{s:8:"filename";s:16:"sources/exif.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:56:"This is the path of the photo which may contain metadata";s:11:"phpdoc_name";s:4:"path";}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:69:"This is the original filename of the photo which may contain metadata";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:22:"get_exif_image_caption";s:11:"description";s:190:"Attempt to retrieve a caption from photos seeking XMP, then EXIF, then IPTC binary last.Check this file is a valid image file before passing to this function as an empty string often annoys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"Whichever caption is found";}}s:10:"store_exif";a:5:{s:8:"filename";s:16:"sources/exif.php";s:10:"parameters";a:4:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:4:"exif";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The EXIF data";s:11:"phpdoc_name";s:4:"exif";}i:3;a:7:{s:4:"name";s:3:"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:"Extra metadata to store, against explicit field IDs (null: none)";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:10:"store_exif";s:11:"description";s:346:"Save metadata into content type's custom fields, by looking for fields named after the EXIF/EXIF-emulated metadata (specifically in English).Spaces may be added to the names to make them prettier, but otherwise they must be the same.Designed to be used by headless-importers, e.g. bulk importing of media files, to make the process a bit smarter.";s:5:"flags";a:0:{}}s:12:"cleanup_exif";a:6:{s:8:"filename";s:16:"sources/exif.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"metadata";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The EXIF data";s:11:"phpdoc_name";s:8:"metadata";}}s:4:"name";s:12:"cleanup_exif";s:11:"description";s:48:"Cleanup some EXIF, to the correct character set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"Cleaned up EXIF data";}}s:13:"init__failure";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__failure";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"suggest_fatalistic";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"suggest_fatalistic";s:11:"description";s:98:"Give the user an option to see a stack trace by adding in a link, but only if they have permission";s:5:"flags";a:0:{}}s:9:"zip_error";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"errno";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The zip error number.";s:11:"phpdoc_name";s:5:"errno";}i:1;a:7:{s:4:"name";s:4:"mzip";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether mzip was used.";s:11:"phpdoc_name";s:4:"mzip";}}s:4:"name";s:9:"zip_error";s:11:"description";s:44:"Terminate with an error caused by unzipping.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Error message.";}}s:14:"_param_invalid";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{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:53:"The parameter deemed to have an invalid value somehow";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:3:"ret";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:75:"The value of the parameter deemed invalid (null: we known we can't recover)";s:11:"phpdoc_name";s:3:"ret";}i:2;a:5:{s:4:"name";s:6:"posted";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the parameter is a POST parameter";s:11:"phpdoc_name";s:6:"posted";}}s:4:"name";s:14:"_param_invalid";s:11:"description";s:32:"Handle invalid parameter values.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:135:"Fixed parameter (usually the function won't return [instead will give an error], but in special cases, it can filter an invalid return)";}}s:20:"improperly_filled_in";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{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:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"posted";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:62:"Whether the parameter is a POST parameter (null: undetermined)";s:11:"phpdoc_name";s:6:"posted";}i:2;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:42:"The array we're extracting parameters from";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:20:"improperly_filled_in";s:11:"description";s:37:"Complain about a field being missing.";s:5:"flags";a:0:{}}s:25:"improperly_filled_in_post";a:5:{s:8:"filename";s:19:"sources/failure.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:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:25:"improperly_filled_in_post";s:11:"description";s:42:"Complain about a POST field being missing.";s:5:"flags";a:0:{}}s:22:"_composr_error_handler";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:6:{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:54:"Error type indicator (tiny human-readable text string)";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:5:"errno";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The error code-number";s:11:"phpdoc_name";s:5:"errno";}i:2;a:5:{s:4:"name";s:6:"errstr";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:17:"The error message";s:11:"phpdoc_name";s:6:"errstr";}i:3;a:5:{s:4:"name";s:7:"errfile";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The file the error occurred in";s:11:"phpdoc_name";s:7:"errfile";}i:4;a:5:{s:4:"name";s:7:"errline";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The line the error occurred on";s:11:"phpdoc_name";s:7:"errline";}i:5;a:5:{s:4:"name";s:11:"syslog_type";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The syslog type (used by GAE logging)";s:11:"phpdoc_name";s:11:"syslog_type";}}s:4:"name";s:22:"_composr_error_handler";s:11:"description";s:88:"Called by 'composr_error_handler'. Composr error handler (hooked into PHP error system).";s:5:"flags";a:0:{}}s:12:"_warn_screen";a:6:{s:8:"filename";s:19:"sources/failure.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:26:"The title of the warn page";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:60:"The text to put on the warn page (either Tempcode or string)";s:11:"phpdoc_name";s:4:"text";}i:2;a:7:{s:4:"name";s:12:"provide_back";s:7:"default";s:12:"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 a back button";s:11:"phpdoc_name";s:12:"provide_back";}i:3;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether match key messages / redirects should be supported";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:12:"_warn_screen";s:11:"description";s:33:"Get the Tempcode for a warn page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The warn page";}}s:19:"_sanitise_error_msg";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The error message";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:19:"_sanitise_error_msg";s:11:"description";s:46:"Do a terminal execution on a defined page type";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"Sanitised error message";}}s:13:"_generic_exit";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:5:{s:4:"name";s:8:"template";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"Name of the terminal page template";s:11:"phpdoc_name";s:8:"template";}i:2;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:74:"?Whether match key messages / redirects should be supported (null: detect)";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:13:"_generic_exit";s:11:"description";s:46:"Do a terminal execution on a defined page type";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:10:"_inet_pton";a:6:{s:8:"filename";s:19:"sources/failure.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:10:"IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:10:"_inet_pton";s:11:"description";s:26:"Normalise an IPv6 address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:18:"Normalised address";}}s:13:"ip_cidr_check";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:2:{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:10:"IP address";s:11:"phpdoc_name";s:2:"ip";}i:1;a:5:{s:4:"name";s:4:"cidr";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"CIDR range (e.g. 204.93.240.0/24)";s:11:"phpdoc_name";s:4:"cidr";}}s:4:"name";s:13:"ip_cidr_check";s:11:"description";s:118:"Find if an IP address is within a CIDR range. Based on comment in PHP manual: http://php.net/manual/en/ref.network.php";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:25:"_log_hack_attack_and_exit";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:67:"The reason for the hack attack. This has to be a language string ID";s:11:"phpdoc_name";s:6:"reason";}i:1;a:7:{s:4:"name";s:14:"reason_param_a";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:97:"A parameter for the hack attack language string (this should be based on a unique ID, preferably)";s:11:"phpdoc_name";s:14:"reason_param_a";}i:2;a:7:{s:4:"name";s:14:"reason_param_b";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:67:"A more illustrative parameter, which may be anything (e.g. a title)";s:11:"phpdoc_name";s:14:"reason_param_b";}i:3;a:7:{s:4:"name";s:6:"silent";s:7:"default";s:13:"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 silently log the hack rather than also exiting";s:11:"phpdoc_name";s:6:"silent";}i:4;a:7:{s:4:"name";s:11:"instant_ban";s:7:"default";s:13:"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 a ban should be immediate";s:11:"phpdoc_name";s:11:"instant_ban";}}s:4:"name";s:25:"_log_hack_attack_and_exit";s:11:"description";s:130:"Log a hackattack, then displays an error message. It also attempts to send an e-mail to the staff alerting them of the hackattack.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:10:"add_ip_ban";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:4:{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 IP address to ban";s:11:"phpdoc_name";s:2:"ip";}i:1;a:7:{s:4:"name";s:7:"descrip";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:"Explanation for ban";s:11:"phpdoc_name";s:7:"descrip";}i:2;a:7:{s:4:"name";s:9:"ban_until";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:34:"When to ban until (null: no limit)";s:11:"phpdoc_name";s:9:"ban_until";}i:3;a:7:{s:4:"name";s:12:"ban_positive";s:7:"default";s:12:"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 this is a positive ban (as opposed to a cached negative)";s:11:"phpdoc_name";s:12:"ban_positive";}}s:4:"name";s:10:"add_ip_ban";s:11:"description";s:14:"Add an IP-ban.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether a change actually happened";}}s:13:"remove_ip_ban";a:5:{s:8:"filename";s:19:"sources/failure.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:23:"The IP address to unban";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:13:"remove_ip_ban";s:11:"description";s:17:"Remove an IP-ban.";s:5:"flags";a:0:{}}s:21:"get_webservice_result";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"error_message";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:13:"error_message";}}s:4:"name";s:21:"get_webservice_result";s:11:"description";s:62:"Lookup error on compo.sr, to see if there is more information.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:49:"The result from the web service (null: no result)";}}s:11:"_fatal_exit";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:6:"return";s:7:"default";s:13:"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:"Whether to return";s:11:"phpdoc_name";s:6:"return";}}s:4:"name";s:11:"_fatal_exit";s:11:"description";s:158:"Do a fatal exit, echo the header (if possible) and an error message, followed by a debugging back-trace.It also adds an entry to the error log, for reference.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:24:"relay_error_notification";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"A error message (in HTML)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:10:"ocproducts";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:23:"Also send to ocProducts";s:11:"phpdoc_name";s:10:"ocproducts";}i:2;a:7:{s:4:"name";s:17:"notification_type";s:7:"default";s:14:"error_occurred";s:11:"default_raw";s:16:"'error_occurred'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The notification type";s:11:"phpdoc_name";s:17:"notification_type";}}s:4:"name";s:24:"relay_error_notification";s:11:"description";s:99:"Relay an error message, if appropriate, to e-mail listeners (sometimes ocProducts, and site staff).";s:5:"flags";a:0:{}}s:19:"may_see_stack_dumps";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"may_see_stack_dumps";s:11:"description";s:50:"Find whether the current user may see stack dumps.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the current user may see stack dumps";}}s:14:"die_html_trace";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"An error message";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:14:"die_html_trace";s:11:"description";s:110:"Echo an error message, and a debug back-trace of the current execution stack. Use this for debugging purposes.";s:5:"flags";a:0:{}}s:24:"put_value_in_stack_trace";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"Complex value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:24:"put_value_in_stack_trace";s:11:"description";s:45:"Prepare a value for display in a stack trace.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"String version";}}s:14:"get_html_trace";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_html_trace";s:11:"description";s:94:"Return a debugging back-trace of the current execution stack. Use this for debugging purposes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Debugging backtrace";}}s:27:"_look_for_match_key_message";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"natural_text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:49:"Message screen text that is about to be displayed";s:11:"phpdoc_name";s:12:"natural_text";}i:1;a:7:{s:4:"name";s:12:"only_if_zone";s:7:"default";s:13:"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:"Only if it is a zone-level match-key";s:11:"phpdoc_name";s:12:"only_if_zone";}i:2;a:7:{s:4:"name";s:15:"only_text_match";s:7:"default";s:13:"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 only consider text matches, not match-key matches";s:11:"phpdoc_name";s:15:"only_text_match";}}s:4:"name";s:27:"_look_for_match_key_message";s:11:"description";s:103:"See if a match-key message affects the error context we are in. May also internally trigger a redirect.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:29:"The message (null: no change)";}}s:14:"_access_denied";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"class";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The class of error (e.g. PRIVILEGE)";s:11:"phpdoc_name";s:5:"class";}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:40:"The parameter given to the error message";s:11:"phpdoc_name";s:5:"param";}i:2;a:5:{s:4:"name";s:11:"force_login";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:68:"Force the user to login (even if perhaps they are logged in already)";s:11:"phpdoc_name";s:11:"force_login";}}s:4:"name";s:14:"_access_denied";s:11:"description";s:108:"Show a helpful access-denied page. Has a login ability if it senses that logging in could curtail the error.";s:5:"flags";a:0:{}}s:16:"set_throw_errors";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:16:"_throwing_errors";s:7:"default";s:12:"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 we should throw errors";s:11:"phpdoc_name";s:16:"_throwing_errors";}}s:4:"name";s:16:"set_throw_errors";s:11:"description";s:79:"Specify if errors should be thrown, rather than resulting in HTML exit screens.";s:5:"flags";a:0:{}}s:15:"throwing_errors";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"throwing_errors";s:11:"description";s:119:"Find whether we should throw errors, rather than create HTML exit screens with the error messages / correction screens.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to are throwing errors";}}s:24:"syndicate_spammer_report";a:5:{s:8:"filename";s:28:"sources/failure_spammers.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"ip_addr";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:20:"IP address to report";s:11:"phpdoc_name";s:7:"ip_addr";}i:1;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"Username address to report";s:11:"phpdoc_name";s:8:"username";}i:2;a:5:{s:4:"name";s:5:"email";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:23:"Email address to report";s:11:"phpdoc_name";s:5:"email";}i:3;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The reason for the report (blank: none)";s:11:"phpdoc_name";s:6:"reason";}i:4;a:7:{s:4:"name";s:13:"trigger_error";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:158:"Whether to emit a Composr error, on error. Should not be 'true' for automatic spammer reports, as the spammer should not see the submission process in action!";s:11:"phpdoc_name";s:13:"trigger_error";}}s:4:"name";s:24:"syndicate_spammer_report";s:11:"description";s:50:"Syndicate a spammer report out to wherever we can.";s:5:"flags";a:0:{}}s:14:"init__feedback";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__feedback";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:32:"process_overridden_comment_forum";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:13:"feedback_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:73:"The feedback code, which we may have overridden the comment forum against";s:11:"phpdoc_name";s:13:"feedback_code";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:51:"The resource ID whose comment topic may need moving";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:83:"The new/current category ID, which we may have overridden the comment forum against";s:11:"phpdoc_name";s:11:"category_id";}i:3;a:5:{s:4:"name";s:15:"old_category_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:75:"The old category ID, which we may have overridden the comment forum against";s:11:"phpdoc_name";s:15:"old_category_id";}}s:4:"name";s:32:"process_overridden_comment_forum";s:11:"description";s:217:"Get the comment topic forum for a feedback scenario, and move an existing comment topic to a different forum if the category has moved and the categories have divergent configured comment topic forums (Conversr only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The comment topic forum";}}s:29:"find_overridden_comment_forum";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"feedback_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:73:"The feedback code, which we may have overridden the comment forum against";s:11:"phpdoc_name";s:13:"feedback_code";}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:8:"?ID_TEXT";s:11:"description";s:114:"The category ID, which we may have overridden the comment forum against (null: no category ID to override against)";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:29:"find_overridden_comment_forum";s:11:"description";s:52:"Get the comment topic forum for a feedback scenario.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:114:"The comment topic forum (may be integer as string, or string forum name - so use forum_id_from_name on the result)";}}s:32:"get_details_behind_feedback_code";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:2:{i:0;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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:32:"get_details_behind_feedback_code";s:11:"description";s:51:"Find who submitted a piece of feedbackable content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:187:"A tuple: Content title (null means unknown), Submitter (null means unknown), URL (for use within current browser session), URL (for use in emails / sharing), Content meta aware info array";}}s:22:"embed_feedback_systems";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_name";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:9:"page_name";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:25:"Whether rating is allowed";s:11:"phpdoc_name";s:12:"allow_rating";}i:3;a:6:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:55:"Whether comments/reviews is allowed (reviews allowed=2)";s:11:"phpdoc_name";s:14:"allow_comments";s:3:"set";s:5:"0 1 2";}i:4;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether trackbacks are allowed";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:5;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the content is validated";s:11:"phpdoc_name";s:9:"validated";}i:6;a:5:{s:4:"name";s:9:"submitter";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:26:"Content owner (null: none)";s:11:"phpdoc_name";s:9:"submitter";}i:7;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:23:"URL to view the content";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Content title";s:11:"phpdoc_name";s:13:"content_title";}i:9;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:51:"Forum to post comments in (null: site-wide default)";s:11:"phpdoc_name";s:5:"forum";}i:10;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:33:"Time of comment topic (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:22:"embed_feedback_systems";s:11:"description";s:83:"Main wrapper function to embed miscellaneous feedback systems into a module output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"Tuple: Rating details, Comment details, Trackback details";}}s:19:"post_comment_script";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"post_comment_script";s:11:"description";s:23:"Do an AJAX comment post";s:5:"flags";a:0:{}}s:14:"get_rating_box";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:1;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:4;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:143:"Whether this resource allows rating (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:12:"allow_rating";}i:5;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:26:"Content owner (null: none)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:14:"get_rating_box";s:11:"description";s:67:"Get Tempcode for doing ratings (sits above get_rating_simple_array)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:32:"Tempcode for complete rating box";}}s:14:"display_rating";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:1;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:4;a:7:{s:4:"name";s:11:"display_tpl";s:7:"default";s:20:"RATING_INLINE_STATIC";s:11:"default_raw";s:22:"'RATING_INLINE_STATIC'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The template to use to display the rating box";s:11:"phpdoc_name";s:11:"display_tpl";}i:5;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:26:"Content owner (null: none)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:14:"display_rating";s:11:"description";s:27:"Display rating using images";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:35:"Tempcode for complete trackback box";}}s:23:"get_rating_simple_array";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:1;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:4;a:7:{s:4:"name";s:8:"form_tpl";s:7:"default";s:11:"RATING_FORM";s:11:"default_raw";s:13:"'RATING_FORM'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The template to use to display the rating box";s:11:"phpdoc_name";s:8:"form_tpl";}i:5;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:26:"Content owner (null: none)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:23:"get_rating_simple_array";s:11:"description";s:50:"Get rating information for the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:213:"Current rating information (ready to be passed into a template). RATING is the rating (out of 10), NUM_RATINGS is the number of ratings so far, RATING_FORM is the Tempcode of the rating box (null: rating disabled)";}}s:13:"already_rated";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:16:"rating_for_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:98:"List of types (download, etc) that this rating is for. All need to be rated for it to return true.";s:11:"phpdoc_name";s:16:"rating_for_types";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:13:"already_rated";s:11:"description";s:58:"Find whether you have rated the specified resource before.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the resource has already been rated";}}s:16:"actualise_rating";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:143:"Whether this resource allows rating (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:12:"allow_rating";}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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:4;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}}s:4:"name";s:16:"actualise_rating";s:11:"description";s:150:"Actually adds a rating to the specified resource.It performs full checking of inputs, and will log a hackattack if the rating is not between 1 and 10.";s:5:"flags";a:0:{}}s:28:"actualise_give_rating_points";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"actualise_give_rating_points";s:11:"description";s:47:"Assign points to the current member for rating.";s:5:"flags";a:0:{}}s:25:"actualise_specific_rating";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:8:{i:0;a:6:{s:4:"name";s:6:"rating";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:27:"Rating given (null: unrate)";s:11:"phpdoc_name";s:6:"rating";s:5:"range";s:4:"1 10";}i:1;a:5:{s:4:"name";s:9:"page_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The page name the rating is on";s:11:"phpdoc_name";s:9:"page_name";}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:27:"The member doing the rating";s:11:"phpdoc_name";s:9:"member_id";}i:3;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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}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:38:"The second level type (probably blank)";s:11:"phpdoc_name";s:4:"type";}i:5;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:6;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:7;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:109:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know)";s:11:"phpdoc_name";s:13:"content_title";}}s:4:"name";s:25:"actualise_specific_rating";s:11:"description";s:40:"Implement a rating at the quantum level.";s:5:"flags";a:0:{}}s:12:"get_comments";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:12:{i:0;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:52:"The type (download, etc) that this commenting is for";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The ID of the type that this commenting is for";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:7:{s:4:"name";s:24:"invisible_if_no_comments";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether the comment box will be invisible if there are not yet any comments (and you're not staff)";s:11:"phpdoc_name";s:24:"invisible_if_no_comments";}i:4;a:7:{s:4:"name";s:5:"forum";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:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:5:"forum";}i:5;a:7:{s:4:"name";s:12:"post_warning";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:57:"The default post to use (null: standard courtesy warning)";s:11:"phpdoc_name";s:12:"post_warning";}i:6;a:7:{s:4:"name";s:9:"_comments";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:91:"The raw comment array (null: lookup). This is useful if we want to pass it through a filter";s:11:"phpdoc_name";s:9:"_comments";}i:7;a:7:{s:4:"name";s:14:"explicit_allow";s:7:"default";s:13:"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 skip permission checks";s:11:"phpdoc_name";s:14:"explicit_allow";}i:8;a:7:{s:4:"name";s:7:"reverse";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:93:"Whether to show in reverse date order (affects default search order only) (null: read config)";s:11:"phpdoc_name";s:7:"reverse";}i:9;a:7:{s:4:"name";s:17:"highlight_by_user";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:43:"User to highlight the posts of (null: none)";s:11:"phpdoc_name";s:17:"highlight_by_user";}i:10;a:7:{s:4:"name";s:13:"allow_reviews";s:7:"default";s:13:"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 allow ratings along with the comment (like reviews)";s:11:"phpdoc_name";s:13:"allow_reviews";}i:11;a:7:{s:4:"name";s:17:"num_to_show_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:31:"Maximum to load (null: default)";s:11:"phpdoc_name";s:17:"num_to_show_limit";}}s:4:"name";s:12:"get_comments";s:11:"description";s:110:"Get the Tempcode containing all the comments posted, and the comments posting form for the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The Tempcode for the comment topic";}}s:24:"extract_topic_identifier";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"full_text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"Potentially complex topic title";s:11:"phpdoc_name";s:9:"full_text";}}s:4:"name";s:24:"extract_topic_identifier";s:11:"description";s:209:"Topic titles/descriptions (depending on forum driver) are encoded for both human readable data, and a special ID code: this will extract just the ID code, or return the whole thing if no specific pattern match";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"Simplified topic title";}}s:22:"actualise_post_comment";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}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:52:"The type (download, etc) that this commenting is for";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The ID of the type that this commenting is for";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:4;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}i:5;a:7:{s:4:"name";s:5:"forum";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:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:5:"forum";}i:6;a:7:{s:4:"name";s:13:"avoid_captcha";s:7:"default";s:13:"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 not require a captcha";s:11:"phpdoc_name";s:13:"avoid_captcha";}i:7;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:176:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver (hence is the last parameter).";s:11:"phpdoc_name";s:9:"validated";}i:8;a:7:{s:4:"name";s:14:"explicit_allow";s:7:"default";s:13:"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 allowance";s:11:"phpdoc_name";s:14:"explicit_allow";}i:9;a:7:{s:4:"name";s:18:"no_success_message";s:7:"default";s:13:"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 skip a success message";s:11:"phpdoc_name";s:18:"no_success_message";}i:10;a:7:{s:4:"name";s:7:"private";s:7:"default";s:13:"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 posts made should not be shared";s:11:"phpdoc_name";s:7:"private";}i:11;a:7:{s:4:"name";s:10:"post_title";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:54:"Title of the post (null: lookup from POST environment)";s:11:"phpdoc_name";s:10:"post_title";}i:12;a:7:{s:4:"name";s:4:"post";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:53:"Body of the post (null: lookup from POST environment)";s:11:"phpdoc_name";s:4:"post";}i:13;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:33:"Time of comment topic (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:22:"actualise_post_comment";s:11:"description";s:39:"Add comments to the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether a hidden post has been made";}}s:18:"update_spacer_post";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}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:52:"The type (download, etc) that this commenting is for";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The ID of the type that this commenting is for";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:4;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}i:5;a:7:{s:4:"name";s:5:"forum";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:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:5:"forum";}i:6;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:33:"ID of spacer post (null: unknown)";s:11:"phpdoc_name";s:7:"post_id";}}s:4:"name";s:18:"update_spacer_post";s:11:"description";s:57:"Update the spacer post of a comment topic, after an edit.";s:5:"flags";a:0:{}}s:14:"get_trackbacks";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:4:{i:0;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:51:"The type (download, etc) that this trackback is for";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The ID of the type that this trackback is for";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:15:"allow_trackback";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:146:"Whether this resource allows trackback (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:15:"allow_trackback";}i:3;a:7:{s:4:"name";s:4:"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:59:"The type of details being fetched (currently: blank or XML)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:14:"get_trackbacks";s:11:"description";s:115:"Get the Tempcode containing all the trackbacks received, and the trackback posting form for the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:35:"Tempcode for complete trackback box";}}s:24:"actualise_post_trackback";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:146:"Whether this resource allows trackback (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}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:51:"The type (download, etc) that this trackback is for";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The ID of the type that this trackback is for";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:24:"actualise_post_trackback";s:11:"description";s:41:"Add trackbacks to the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether trackbacks are on";}}s:21:"set_comment_forum_for";a:5:{s:8:"filename";s:21:"sources/feedback2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"feedback_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:57:"The feedback code to override the comment topic forum for";s:11:"phpdoc_name";s:13:"feedback_code";}i:1;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:68:"The category ID to override the comment topic forum for (null: none)";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The new comment topic forum";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:21:"set_comment_forum_for";s:11:"description";s:88:"Set an overridden comment topic forum for a feedback scenario. Moves topics if required.";s:5:"flags";a:0:{}}s:16:"trackback_script";a:5:{s:8:"filename";s:21:"sources/feedback2.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"trackback_script";s:11:"description";s:50:"Output the trackback script and handle trackbacks.";s:5:"flags";a:0:{}}s:15:"feedback_fields";a:6:{s:8:"filename";s:21:"sources/feedback2.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether rating is currently/by-default allowed for this resource";s:11:"phpdoc_name";s:12:"allow_rating";}i:2;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:67:"Whether comments are currently/by-default allowed for this resource";s:11:"phpdoc_name";s:14:"allow_comments";}i:3;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:130:"Whether trackbacks are currently/by-default allowed for this resource (null: this resource does not support trackbacks regardless)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:4;a:5:{s:4:"name";s:15:"send_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether we're allowed to send trackbacks for this resource";s:11:"phpdoc_name";s:15:"send_trackbacks";}i:5;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:45:"The current/by-default notes for this content";s:11:"phpdoc_name";s:5:"notes";}i:6;a:7:{s:4:"name";s:13:"allow_reviews";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:98:"Whether reviews are currently/by-default allowed for this resource (null: no reviews allowed here)";s:11:"phpdoc_name";s:13:"allow_reviews";}i:7;a:7:{s:4:"name";s:11:"default_off";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:113:"Whether the default values for the allow options is actually off (this determines how the tray auto-hides itself)";s:11:"phpdoc_name";s:11:"default_off";}i:8;a:7:{s:4:"name";s:9:"has_notes";s:7:"default";s:12:"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:"If there's to be a notes field";s:11:"phpdoc_name";s:9:"has_notes";}i:9;a:7:{s:4:"name";s:11:"show_header";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether to show a header";s:11:"phpdoc_name";s:11:"show_header";}i:10;a:7:{s:4:"name";s:17:"field_name_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:17:"Field name prefix";s:11:"phpdoc_name";s:17:"field_name_prefix";}}s:4:"name";s:15:"feedback_fields";s:11:"description";s:117:"Get the Tempcode for the manipulation of the feedback fields for some content, if they are enabled in the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"The feedback editing fields";}}s:15:"send_trackbacks";a:6:{s:8:"filename";s:21:"sources/feedback2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"_urls";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:59:"A comma-separated list of URLs to which we should trackback";s:11:"phpdoc_name";s:5:"_urls";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The article title";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:7:"excerpt";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The excerpt to send";s:11:"phpdoc_name";s:7:"excerpt";}}s:4:"name";s:15:"send_trackbacks";s:11:"description";s:44:"Send a trackback to somebody else's website.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:21:"catalogue_file_script";a:5:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"catalogue_file_script";s:11:"description";s:46:"Farm out the files for catalogue entry fields.";s:5:"flags";a:0:{}}s:29:"option_value_from_field_array";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Field map";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:4:"name";}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:6:"string";s:11:"description";s:19:"Field default value";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:29:"option_value_from_field_array";s:11:"description";s:75:"Parse field options into a setting map and return a specific value from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The value";}}s:19:"parse_field_options";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"__options";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Options string";s:11:"phpdoc_name";s:9:"__options";}}s:4:"name";s:19:"parse_field_options";s:11:"description";s:48:"Parse a field options string into a setting map.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The setting map";}}s:20:"get_catalogue_fields";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{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:48:"The name of the catalogue (null: all catalogues)";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:20:"get_catalogue_fields";s:11:"description";s:69:"Ensure a catalogues fields are loaded up in a cache, and return them.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:56:"The fields (empty array if the catalogue does not exist)";}}s:15:"get_fields_hook";a:6:{s:8:"filename";s:18:"sources/fields.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:8:"Codename";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:15:"get_fields_hook";s:11:"description";s:41:"Get a fields hook, from a given codename.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"object";s:11:"description";s:11:"Hook object";}}s:32:"manage_custom_fields_donext_link";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}}s:4:"name";s:32:"manage_custom_fields_donext_link";s:11:"description";s:69:"Get extra do-next icon for managing custom fields for a content type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"Extra do-next icon (single item array, or empty array if catalogues not installed)";}}s:33:"manage_custom_fields_entry_points";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}}s:4:"name";s:33:"manage_custom_fields_entry_points";s:11:"description";s:73:"Get extra entry point data for managing custom fields for a content type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"Extra get_entry_points data";}}s:18:"has_tied_catalogue";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}}s:4:"name";s:18:"has_tied_catalogue";s:11:"description";s:49:"Find whether a 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:23:"get_bound_content_entry";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:2:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Content entry ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:23:"get_bound_content_entry";s:11:"description";s:48:"Get catalogue entry ID bound to a content entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:37:"Bound catalogue entry ID (null: none)";}}s:25:"append_form_custom_fields";a:5:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:7:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:34:"Content entry ID (null: new entry)";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:28:"Fields (passed by reference)";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:35:"Hidden Fields (passed by reference)";s:11:"phpdoc_name";s:6:"hidden";}i:4;a:7:{s:4:"name";s:12:"field_filter";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:38:"Limit fields to a set (null: no limit)";s:11:"phpdoc_name";s:12:"field_filter";}i:5;a:7:{s:4:"name";s:22:"field_filter_whitelist";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether $field_filter is a whitelist (if false, it is a blacklist)";s:11:"phpdoc_name";s:22:"field_filter_whitelist";}i:6;a:7:{s:4:"name";s:19:"add_separate_header";s:7:"default";s:13:"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 add a separate header above the fields, so long as not all the fields are already under some other header";s:11:"phpdoc_name";s:19:"add_separate_header";}}s:4:"name";s:25:"append_form_custom_fields";s:11:"description";s:67:"Append fields to content add/edit form for gathering custom fields.";s:5:"flags";a:0:{}}s:23:"save_form_custom_fields";a:5:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:3:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Content entry ID";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:6:"old_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:72:"Content entry ID (prior to possible rename) (null: definitely unchanged)";s:11:"phpdoc_name";s:6:"old_id";}}s:4:"name";s:23:"save_form_custom_fields";s:11:"description";s:37:"Save custom fields to a content item.";s:5:"flags";a:0:{}}s:25:"delete_form_custom_fields";a:5:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:2:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Content entry ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:25:"delete_form_custom_fields";s:11:"description";s:38:"Delete custom fields for content item.";s:5:"flags";a:0:{}}s:32:"create_selection_list_field_type";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:4:"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:20:"Field type to select";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:20:"limit_to_storage_set";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to only show options in the same storage set as $type";s:11:"phpdoc_name";s:20:"limit_to_storage_set";}}s:4:"name";s:32:"create_selection_list_field_type";s:11:"description";s:45:"Get a list of all field types to choose from.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"List of field types";}}s:26:"find_broken_filedump_links";a:6:{s:8:"filename";s:20:"sources/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"find_broken_filedump_links";s:11:"description";s:59:"Find broken filedump links, and try and find how to fix it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:53:"Filedump broken links, to replacement path (or null).";}}s:21:"update_filedump_links";a:5:{s:8:"filename";s:20:"sources/filedump.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:71:"Old path (give a path relative to uploads/filedump, with leading slash)";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:6:"string";s:11:"description";s:71:"New path (give a path relative to uploads/filedump, with leading slash)";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:21:"update_filedump_links";s:11:"description";s:60:"Re-map pre-existing filedump links from one path to another.";s:5:"flags";a:0:{}}s:19:"find_filedump_links";a:6:{s:8:"filename";s:20:"sources/filedump.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"focus";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:117:"Focus on a particular filedump file (give a path relative to uploads/filedump, with leading slash) (blank: no filter)";s:11:"phpdoc_name";s:5:"focus";}}s:4:"name";s:19:"find_filedump_links";s:11:"description";s:29:"Find all filedump links used.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"Filedump links used, and where";}}s:22:"extract_filedump_links";a:5:{s:8:"filename";s:20:"sources/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Comcode to scan";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"An identifier for where this Comcode was from";s:11:"phpdoc_name";s:10:"identifier";}i:2;a:5:{s:4:"name";s:5:"focus";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:117:"Focus on a particular filedump file (give a path relative to uploads/filedump), with leading slash (blank: no filter)";s:11:"phpdoc_name";s:5:"focus";}i:3;a:5:{s:4:"name";s:10:"paths_used";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:33:"Paths found (passed by reference)";s:11:"phpdoc_name";s:10:"paths_used";}}s:4:"name";s:22:"extract_filedump_links";s:11:"description";s:59:"Find filedump links within some Comcode (an approximation).";s:5:"flags";a:0:{}}s:11:"init__files";a:5:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__files";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:26:"cms_file_put_contents_safe";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:4:{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:10:"File path.";s:11:"phpdoc_name";s:4:"path";}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:14:"File contents.";s:11:"phpdoc_name";s:8:"contents";}i:2;a:7:{s:4:"name";s:5:"flags";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:19:"FILE_WRITE_* flags.";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"retry_depth";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:69:"How deep it is into retrying if somehow the data did not get written.";s:11:"phpdoc_name";s:11:"retry_depth";}}s:4:"name";s:26:"cms_file_put_contents_safe";s:11:"description";s:61:"Write out to a file, with lots of error checking and locking.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:34:"_cms_file_put_contents_safe_failed";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"error_message";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:35:"Error message (Tempcode or string).";s:11:"phpdoc_name";s:13:"error_message";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:10:"File path.";s:11:"phpdoc_name";s:4:"path";}i:2;a:7:{s:4:"name";s:5:"flags";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:19:"FILE_WRITE_* flags.";s:11:"phpdoc_name";s:5:"flags";}}s:4:"name";s:34:"_cms_file_put_contents_safe_failed";s:11:"description";s:70:"If cms_file_put_contents_safe has failed, process the error messaging.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Success status (always false).";}}s:16:"php_return_bytes";a:6:{s:8:"filename";s:17:"sources/files.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:24:"PHP config option value.";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:16:"php_return_bytes";s:11:"description";s:80:"Get the number of bytes for a PHP config option. Code taken from the PHP manual.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Number of bytes.";}}s:13:"get_file_size";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:1:{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:71:"The URL that the file size of is being worked out for. Should be local.";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:13:"get_file_size";s:11:"description";s:144:"Get a formatted-string filesize for the specified file. It is formatted as such: x MB/KB/Bytes (or unknown). It is assumed that the file exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"The formatted-string file size";}}s:15:"clean_file_size";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"bytes";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"The number of bytes the file has";s:11:"phpdoc_name";s:5:"bytes";}}s:4:"name";s:15:"clean_file_size";s:11:"description";s:30:"Format the specified filesize.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"The formatted-string file size";}}s:21:"better_parse_ini_file";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:72:"The path to the ini file to open (null: given contents in $file instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:4:"file";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:55:"The contents of the file (null: the file needs opening)";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:21:"better_parse_ini_file";s:11:"description";s:64:"Parse the specified INI file, and get an array of what it found.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A map of the contents of the ini files";}}s:18:"should_ignore_file";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filepath";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"File path (relative to Composr base directory)";s:11:"phpdoc_name";s:8:"filepath";}i:1;a:7:{s:4:"name";s:7:"bitmask";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:57:"Bitmask of extra stuff to ignore (see IGNORE_* constants)";s:11:"phpdoc_name";s:7:"bitmask";}i:2;a:7:{s:4:"name";s:16:"bitmask_defaults";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:79:"Set this to 0 if you don't want the default IGNORE_* constants to carry through";s:11:"phpdoc_name";s:16:"bitmask_defaults";}}s:4:"name";s:18:"should_ignore_file";s:11:"description";s:154:"Find whether a file is known to be something that should/could be there but isn't a Composr distribution file, or for some other reason should be ignored.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether it should be ignored";}}s:15:"deldir_contents";a:5:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:3:{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:39:"The pathname to the directory to delete";s:11:"phpdoc_name";s:3:"dir";}i:1;a:7:{s:4:"name";s:16:"default_preserve";s:7:"default";s:13:"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 preserve files there by default";s:11:"phpdoc_name";s:16:"default_preserve";}i:2;a:7:{s:4:"name";s:10:"just_files";s:7:"default";s:13:"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 just delete files";s:11:"phpdoc_name";s:10:"just_files";}}s:4:"name";s:15:"deldir_contents";s:11:"description";s:105:"Delete all the contents of a directory, and any subdirectories of that specified directory (recursively).";s:5:"flags";a:0:{}}s:12:"init__files2";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__files2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"cache_and_carry";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"func";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Function to call";s:11:"phpdoc_name";s:4:"func";}i:1;a:5:{s:4:"name";s:4:"args";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:22:"Arguments to call with";s:11:"phpdoc_name";s:4:"args";}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:37:"Timeout in minutes (null: no timeout)";s:11:"phpdoc_name";s:7:"timeout";}}s:4:"name";s:15:"cache_and_carry";s:11:"description";s:54:"Call a function, with inbuilt on-disk caching support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:77:"The function result OR for http_download_file calls a tuple of result details";}}s:22:"make_missing_directory";a:6:{s:8:"filename";s:18:"sources/files2.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:14:"Path to create";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:22:"make_missing_directory";s:11:"description";s:103:"Make a missing required directory, or exit with an error if we cannot (unless error suppression is on).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:24:"_intelligent_write_error";a:5:{s:8:"filename";s:18:"sources/files2.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:61:"File path that could not be written (full path, not relative)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:24:"_intelligent_write_error";s:11:"description";s:79:"Discern the cause of a file-write error, and show an appropriate error message.";s:5:"flags";a:0:{}}s:31:"_intelligent_write_error_inline";a:6:{s:8:"filename";s:18:"sources/files2.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:35:"File path that could not be written";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:31:"_intelligent_write_error_inline";s:11:"description";s:81:"Discern the cause of a file-write error, and return an appropriate error message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Message";}}s:16:"cms_get_temp_dir";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"cms_get_temp_dir";s:11:"description";s:109:"Find details of where we can save temporary files, taking into account PHP's platform-dependent difficulties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:153:"A tuple: preferred temporary path to save to, whether there's a problem saving in the system path, the system path to save to, the local path to save to.";}}s:12:"_cms_tempnam";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"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:38:"The prefix of the temporary file name.";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:12:"_cms_tempnam";s:11:"description";s:229:"Create file with unique file name, but works around compatibility issues between servers. Note that the file is NOT automatically deleted. You should also delete it using "@unlink", as some servers have problems with permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:46:"The name of the temporary file (false: error).";}}s:10:"_sync_file";a:5:{s:8:"filename";s:18:"sources/files2.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:42:"File/directory name to sync on (full path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:10:"_sync_file";s:11:"description";s:116:"Provides a hook for file synchronisation between mirrored servers. Called after any file creation, deletion or edit.";s:5:"flags";a:0:{}}s:15:"_sync_file_move";a:5:{s:8:"filename";s:18:"sources/files2.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:4:"PATH";s:11:"description";s:63:"File/directory name to move from (may be full or relative path)";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:4:"PATH";s:11:"description";s:61:"File/directory name to move to (may be full or relative path)";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:15:"_sync_file_move";s:11:"description";s:111:"Provides a hook for file-move synchronisation between mirrored servers. Called after any rename or move action.";s:5:"flags";a:0:{}}s:16:"_deldir_contents";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:3:{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:39:"The pathname to the directory to delete";s:11:"phpdoc_name";s:3:"dir";}i:1;a:7:{s:4:"name";s:16:"default_preserve";s:7:"default";s:13:"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 preserve files there by default";s:11:"phpdoc_name";s:16:"default_preserve";}i:2;a:7:{s:4:"name";s:10:"just_files";s:7:"default";s:13:"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 just delete files";s:11:"phpdoc_name";s:10:"just_files";}}s:4:"name";s:16:"_deldir_contents";s:11:"description";s:105:"Delete all the contents of a directory, and any subdirectories of that specified directory (recursively).";s:5:"flags";a:0:{}}s:8:"make_csv";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:41:"List of maps, each map representing a row";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:8:"filename";s:7:"default";s:8:"data.csv";s:11:"default_raw";s:10:"'data.csv'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"Filename to output";s:11:"phpdoc_name";s:8:"filename";}i:2;a:7:{s:4:"name";s:7:"headers";s:7:"default";s:12:"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 output CSV headers";s:11:"phpdoc_name";s:7:"headers";}i:3;a:7:{s:4:"name";s:15:"output_and_exit";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether to output/exit when we're done instead of return";s:11:"phpdoc_name";s:15:"output_and_exit";}i:4;a:7:{s:4:"name";s:12:"outfile_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:31:"File to spool into (null: none)";s:11:"phpdoc_name";s:12:"outfile_path";}i:5;a:7:{s:4:"name";s:8:"callback";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:163:"Callback for dynamic row insertion (null: none). Only implemented for the excel_support addon. Is passed: row just done, next row (or null), returns rows to insert";s:11:"phpdoc_name";s:8:"callback";}i:6;a:7:{s:4:"name";s:8:"metadata";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:82:"List of maps, each map representing metadata of a row; supports 'url' (null: none)";s:11:"phpdoc_name";s:8:"metadata";}}s:4:"name";s:8:"make_csv";s:11:"description";s:26:"Output data to a CSV file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:107:"CSV data (we might not return though, depending on $exit; if $outfile_path is not null, this will be blank)";}}s:17:"delete_csv_column";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"in_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:20:"Path to the CSV file";s:11:"phpdoc_name";s:7:"in_path";}i:1;a:5:{s:4:"name";s:11:"column_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Column name";s:11:"phpdoc_name";s:11:"column_name";}}s:4:"name";s:17:"delete_csv_column";s:11:"description";s:32:"Delete a column from a CSV file.";s:5:"flags";a:0:{}}s:13:"find_php_path";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"cgi";s:7:"default";s:13:"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 we need a CGI interpreter";s:11:"phpdoc_name";s:3:"cgi";}}s:4:"name";s:13:"find_php_path";s:11:"description";s:32:"Find path to the PHP executable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:11:"Path to PHP";}}s:22:"get_directory_contents";a:6:{s:8:"filename";s:18:"sources/files2.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:18:"The path to search";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:8:"rel_path";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:84:"The path we prepend to everything we find (intended to be used inside the recursion)";s:11:"phpdoc_name";s:8:"rel_path";}i:2;a:7:{s:4:"name";s:11:"special_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 get special files";s:11:"phpdoc_name";s:11:"special_too";}i:3;a:7:{s:4:"name";s:7:"recurse";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to recurse (if not, will return directories as files)";s:11:"phpdoc_name";s:7:"recurse";}i:4;a:7:{s:4:"name";s:12:"files_wanted";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get files (if not, will return directories as files)";s:11:"phpdoc_name";s:12:"files_wanted";}}s:4:"name";s:22:"get_directory_contents";s:11:"description";s:86:"Get the contents of a directory, recursively. It is assumed that the directory exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The contents of the directory";}}s:18:"get_directory_size";a:6:{s:8:"filename";s:18:"sources/files2.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:18:"The path to search";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:7:"recurse";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to recurse (if not, will return directories as files)";s:11:"phpdoc_name";s:7:"recurse";}}s:4:"name";s:18:"get_directory_size";s:11:"description";s:78:"Get the size in bytes of a directory. It is assumed that the directory exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:25:"The extra space requested";}}s:27:"get_upload_limit_config_url";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"get_upload_limit_config_url";s:11:"description";s:57:"Get the URL to the config option group for editing limits";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:71:"The URL to the config option group for editing limits (null: no access)";}}s:17:"get_max_file_size";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:13:"source_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:"Member we consider quota for (null: do not consider quota)";s:11:"phpdoc_name";s:13:"source_member";}i:1;a:7:{s:4:"name";s:10:"connection";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:53:"Database connection to get quota from (null: site DB)";s:11:"phpdoc_name";s:10:"connection";}i:2;a:7:{s:4:"name";s:19:"consider_php_limits";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to consider limitations in PHP's configuration";s:11:"phpdoc_name";s:19:"consider_php_limits";}}s:4:"name";s:17:"get_max_file_size";s:11:"description";s:74:"Get the maximum allowed upload filesize, as specified in the configuration";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:45:"The maximum allowed upload filesize, in bytes";}}s:15:"check_extension";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:4:{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:12:"The filename";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:31:"skip_server_side_security_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:46:"Whether to skip the server side security check";s:11:"phpdoc_name";s:31:"skip_server_side_security_check";}i:2;a:7:{s:4:"name";s:14:"file_to_delete";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:"Delete this file if we have to exit (null: no file to delete)";s:11:"phpdoc_name";s:14:"file_to_delete";}i:3;a:7:{s:4:"name";s:13:"accept_errors";s:7:"default";s:13:"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 allow errors without dying";s:11:"phpdoc_name";s:13:"accept_errors";}}s:4:"name";s:15:"check_extension";s:11:"description";s:131:"Check uploaded file extensions for possible malicious intent, and if some is found, an error is put out, and the hackattack logged.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:13:"delete_upload";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"upload_path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The path to the upload directory";s:11:"phpdoc_name";s:11:"upload_path";}i:1;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:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The table field name";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:8:"id_field";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The table ID field name, or a map array";s:11:"phpdoc_name";s:8:"id_field";}i:4;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:12:"The table ID";s:11:"phpdoc_name";s:2:"id";}i:5;a:7:{s:4:"name";s:7:"new_url";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:70:"The new URL to use (null: deleting without replacing: no change check)";s:11:"phpdoc_name";s:7:"new_url";}}s:4:"name";s:13:"delete_upload";s:11:"description";s:227:"Delete an uploaded file from disk, if it's URL has changed (i.e. it's been replaced, leaving a redundant disk file).This MUST be run before the edit/delete operation, as it scans for the existing value to know what is changing.";s:5:"flags";a:0:{}}s:28:"check_shared_bandwidth_usage";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"extra";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The extra bandwidth requested";s:11:"phpdoc_name";s:5:"extra";}}s:4:"name";s:28:"check_shared_bandwidth_usage";s:11:"description";s:65:"Check bandwidth usage against page view ratio for shared hosting.";s:5:"flags";a:0:{}}s:24:"check_shared_space_usage";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"extra";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The extra space in bytes requested";s:11:"phpdoc_name";s:5:"extra";}}s:4:"name";s:24:"check_shared_space_usage";s:11:"description";s:66:"Check disk space usage against page view ratio for shared hosting.";s:5:"flags";a:0:{}}s:19:"_http_download_file";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:19:{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 download";s:11:"phpdoc_name";s:3:"url";}i:1;a:8:{s:4:"name";s:10:"byte_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:91:"The number of bytes to download. This is not a guarantee, it is a minimum (null: all bytes)";s:11:"phpdoc_name";s:10:"byte_limit";s:5:"range";s:5:"1 max";}i:2;a:7:{s:4:"name";s:13:"trigger_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to throw a Composr error, on error";s:11:"phpdoc_name";s:13:"trigger_error";}i:3;a:7:{s:4:"name";s:11:"no_redirect";s:7:"default";s:13:"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 block redirects (returns null when found)";s:11:"phpdoc_name";s:11:"no_redirect";}i:4;a:7:{s:4:"name";s:2:"ua";s:7:"default";s:7:"Composr";s:11:"default_raw";s:9:"'Composr'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:29:"The user-agent to identify as";s:11:"phpdoc_name";s:2:"ua";}i:5;a:7:{s:4:"name";s:11:"post_params";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:145:"An optional array of POST parameters to send; if this is null, a GET request is used (null: none). If $raw_post is set, it should be array($data)";s:11:"phpdoc_name";s:11:"post_params";}i:6;a:7:{s:4:"name";s:7:"cookies";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:49:"An optional array of cookies to send (null: none)";s:11:"phpdoc_name";s:7:"cookies";}i:7;a:7:{s:4:"name";s:6:"accept";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:44:"'accept' header value (null: don't pass one)";s:11:"phpdoc_name";s:6:"accept";}i:8;a:7:{s:4:"name";s:14:"accept_charset";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:52:"'accept-charset' header value (null: don't pass one)";s:11:"phpdoc_name";s:14:"accept_charset";}i:9;a:7:{s:4:"name";s:15:"accept_language";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:53:"'accept-language' header value (null: don't pass one)";s:11:"phpdoc_name";s:15:"accept_language";}i:10;a:7:{s:4:"name";s:13:"write_to_file";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:46:"File handle to write to (null: do not do that)";s:11:"phpdoc_name";s:13:"write_to_file";}i:11;a:7:{s:4:"name";s:7:"referer";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:29:"The HTTP referer (null: none)";s:11:"phpdoc_name";s:7:"referer";}i:12;a:7:{s:4:"name";s:4:"auth";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:"A pair: authentication username and password (null: none)";s:11:"phpdoc_name";s:4:"auth";}i:13;a:7:{s:4:"name";s:7:"timeout";s:7:"default";d:6;s:11:"default_raw";s:3:"6.0";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:11:"The timeout";s:11:"phpdoc_name";s:7:"timeout";}i:14;a:7:{s:4:"name";s:8:"raw_post";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether to treat the POST parameters as a raw POST (rather than using MIME)";s:11:"phpdoc_name";s:8:"raw_post";}i:15;a:7:{s:4:"name";s:5:"files";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:58:"Files to send. Map between field to file path (null: none)";s:11:"phpdoc_name";s:5:"files";}i:16;a:7:{s:4:"name";s:13:"extra_headers";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:"Extra headers to send (null: none)";s:11:"phpdoc_name";s:13:"extra_headers";}i:17;a:7:{s:4:"name";s:9:"http_verb";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:55:"HTTP verb (null: auto-decide based on other parameters)";s:11:"phpdoc_name";s:9:"http_verb";}i:18;a:7:{s:4:"name";s:16:"raw_content_type";s:7:"default";s:15:"application/xml";s:11:"default_raw";s:17:"'application/xml'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:42:"The content type to use if a raw HTTP post";s:11:"phpdoc_name";s:16:"raw_content_type";}}s:4:"name";s:19:"_http_download_file";s:11:"description";s:167:"Return the file in the URL by downloading it over HTTP. If a byte limit is given, it will only download that many bytes. It outputs warnings, returning null, on error.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:33:"The data downloaded (null: error)";}}s:16:"_read_in_headers";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"line";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The line";s:11:"phpdoc_name";s:4:"line";}}s:4:"name";s:16:"_read_in_headers";s:11:"description";s:62:"Read in any HTTP headers that we probe for, from an HTTP line.";s:5:"flags";a:0:{}}s:24:"get_webpage_meta_details";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{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:11:"Webpage URL";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:24:"get_webpage_meta_details";s:11:"description";s:32:"Extract meta details from a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A map of meta details extracted from the webpage";}}s:32:"_http_download_file_curl_headers";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"ch";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"cURL resource handle";s:11:"phpdoc_name";s:2:"ch";}i:1;a:5:{s:4:"name";s:6:"header";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:6:"Header";s:11:"phpdoc_name";s:6:"header";}}s:4:"name";s:32:"_http_download_file_curl_headers";s:11:"description";s:36:"Callback for receiving cURL headers.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Length of header";}}s:29:"_http_download_file_curl_body";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"ch";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"cURL resource handle";s:11:"phpdoc_name";s:2:"ch";}i:1;a:5:{s:4:"name";s:3:"str";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"Body part";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:29:"_http_download_file_curl_body";s:11:"description";s:47:"Callback for receiving a part of the cURL body.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"Length of body part";}}s:26:"_detect_character_encoding";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"The HTTP stream we will look through";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:26:"_detect_character_encoding";s:11:"description";s:161:"Final filter for downloader output: try a bit harder to detect the character encoding, in case it was not in an HTTP filter.Manipulates the $HTTP_CHARSET global.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Same as $out";}}s:34:"read_filtercode_parameter_from_env";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:2:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:7:{s:4:"name";s:10:"field_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:67:"The field type (null: work out what is there to read automatically)";s:11:"phpdoc_name";s:10:"field_type";}}s:4:"name";s:34:"read_filtercode_parameter_from_env";s:11:"description";s:49:"Read an Filtercode parameter value from GET/POST.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The parameter value";}}s:19:"form_for_filtercode";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:102:"String-based search filter (blank: make one up to cover everything, but only works if $table is known)";s:11:"phpdoc_name";s:6:"filter";}i:1;a:7:{s:4:"name";s:6:"labels";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:"Labels for field names (null: none, use auto-generated)";s:11:"phpdoc_name";s:6:"labels";}i:2;a:7:{s:4:"name";s:12:"content_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:63:"Content-type to auto-probe from (null: none, use string inputs)";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:7:{s:4:"name";s:5:"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:64:"Field types (null: none, use string inputs / defaults for table)";s:11:"phpdoc_name";s:5:"types";}}s:4:"name";s:19:"form_for_filtercode";s:11:"description";s:59:"Get a form for inputting unknown variables within a filter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"The form fields, The modded filter, Merger links";}}s:16:"parse_filtercode";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"String-based search filter";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:16:"parse_filtercode";s:11:"description";s:84:"Parse some string based Filtercode search filters into the expected array structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"Parsed structure";}}s:18:"unparse_filtercode";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"parsed";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Parsed structure";s:11:"phpdoc_name";s:6:"parsed";}}s:4:"name";s:18:"unparse_filtercode";s:11:"description";s:101:"Take some parsed Filtercode search filters into the string format (i.e. reverse of parse_filtercode).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"String-based search filter";}}s:28:"_fields_api_filtercode_named";a:6:{s:8:"filename";s:22:"sources/filtercode.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"Name of the catalogue (null: unknown; reduces performance)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:10:"filter_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:10:"filter_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:28:"_fields_api_filtercode_named";s:11:"description";s:49:"Find field by checking fields API, by field name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:22:"_fields_api_filtercode";a:6:{s:8:"filename";s:22:"sources/filtercode.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"Name of the catalogue (null: unknown; reduces performance)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:10:"filter_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:10:"filter_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:22:"_fields_api_filtercode";s:11:"description";s:47:"Find field by checking fields API, by field ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:40:"generate_filtercode_join_key_from_string";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:1:{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:12:"Input string";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:40:"generate_filtercode_join_key_from_string";s:11:"description";s:153:"Produce a key we can use for SQL join names, from some string that may be too complex for this. It should be reproducible and unique for the given input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"Suitable key name";}}s:18:"_default_conv_func";a:6:{s:8:"filename";s:22:"sources/filtercode.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"Name of the catalogue (null: unknown; reduces performance)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:10:"filter_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:10:"filter_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:18:"_default_conv_func";s:11:"description";s:74:"Make sure we are doing necessary join to be able to access the given field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:17:"filtercode_to_sql";a:6:{s:8:"filename";s:22:"sources/filtercode.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:22:"Database object to use";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:7:"filters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"Parsed Filtercode structure";s:11:"phpdoc_name";s:7:"filters";}i:2;a:7:{s:4:"name";s:12:"content_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:81:"The content type (null: no function needed, direct in-table mapping always works)";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:7:{s:4:"name";s:7:"context";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:200:"First parameter to send to the conversion function, may mean whatever that function wants it to. If we have no conversion function, this is the name of a table to read field metadata from (null: none)";s:11:"phpdoc_name";s:7:"context";}i:4;a:7:{s:4:"name";s:15:"table_join_code";s:7:"default";s:1:"r";s:11:"default_raw";s:3:"'r'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:17:"filtercode_to_sql";s:11:"description";s:56:"Convert some Filtercode filters into some SQL fragments.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"Tuple: array of extra select, array of extra join, string of extra where";}}s:30:"prepare_filtercode_merger_link";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"_link_filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Filtercode filter";s:11:"phpdoc_name";s:12:"_link_filter";}}s:4:"name";s:30:"prepare_filtercode_merger_link";s:11:"description";s:119:"Get template-ready details for a merger-link style selectcode. This is used to do filtering via drill-down using links.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"Template-ready details";}}s:20:"init__form_templates";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"init__form_templates";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"read_multi_code";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:116:"The parameter stub (stub of a series of POST parameters, made by cns_get_forum_multi_code_field's field or similar).";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"read_multi_code";s:11:"description";s:46:"Read a multi code from a named parameter stub.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The multi code.";}}s:30:"check_suhosin_request_quantity";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:3:"inc";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:36:"How much to increment the counter by";s:11:"phpdoc_name";s:3:"inc";}i:1;a:7:{s:4:"name";s:11:"name_length";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:29:"The name length being checked";s:11:"phpdoc_name";s:11:"name_length";}}s:4:"name";s:30:"check_suhosin_request_quantity";s:11:"description";s:136:"Ensure Suhosin is not going to break a request due to number of request form fields. Call this each time a field is added to the output.";s:5:"flags";a:0:{}}s:26:"check_suhosin_request_size";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:105:"Most determinitve size within wider request size (we'll assume we actually need 500 more bytes than this)";s:11:"phpdoc_name";s:4:"size";}}s:4:"name";s:26:"check_suhosin_request_size";s:11:"description";s:67:"Ensure Suhosin is not going to break a request due to request size.";s:5:"flags";a:0:{}}s:30:"url_default_parameters__enable";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"url_default_parameters__enable";s:11:"description";s:107:"Enable reading in default parameters from the GET environment. This is typically called before 'add' forms.";s:5:"flags";a:0:{}}s:31:"url_default_parameters__disable";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"url_default_parameters__disable";s:11:"description";s:107:"Disable reading in default parameters from the GET environment. This is typically called after 'add' forms.";s:5:"flags";a:0:{}}s:22:"take_param_int_modeavg";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"setting";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:101:"The current setting (null: we have to work it out); if non-null, the function will immediately return";s:11:"phpdoc_name";s:7:"setting";}i:1;a:5:{s:4:"name";s:11:"db_property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:11:"db_property";}i:2;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The table to average within";s:11:"phpdoc_name";s:5:"table";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The last-resort default";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:22:"take_param_int_modeavg";s:11:"description";s:118:"Find a default property, defaulting to the average of what is there already, or the given default if really necessary.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"The value";}}s:14:"attach_wysiwyg";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"attach_wysiwyg";s:11:"description";s:26:"Attach the WYSIWYG editor.";s:5:"flags";a:0:{}}s:20:"handle_max_file_size";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"Hidden fields";s:11:"phpdoc_name";s:6:"hidden";}i:1;a:8:{s:4:"name";s:21:"regular_max_size_type";s:7:"default";s:4:"file";s:11:"default_raw";s:6:"'file'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:57:"Code representing the media types we are using limits for";s:11:"phpdoc_name";s:21:"regular_max_size_type";s:3:"set";s:10:"image file";}}s:4:"name";s:20:"handle_max_file_size";s:11:"description";s:60:"Insert hidden data for the maximum file size of form fields.";s:5:"flags";a:0:{}}s:15:"get_attachments";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:18:"posting_field_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The name of the field attachments are for";s:11:"phpdoc_name";s:18:"posting_field_name";}}s:4:"name";s:15:"get_attachments";s:11:"description";s:62:"Get what we need to get attachments in a form-field interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A pair: the attachments UI (Tempcode), the hidden attachment field";}}s:16:"get_posting_form";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:11:"submit_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The title of the form submission button";s:11:"phpdoc_name";s:11:"submit_name";}i:1;a:5:{s:4:"name";s:11:"submit_icon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The submit icon CSS class.";s:11:"phpdoc_name";s:11:"submit_icon";}i:2;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"The default post to put in.";s:11:"phpdoc_name";s:4:"post";}i:3;a:5:{s:4:"name";s:8:"post_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"Where the form is sent (URLPATH or Tempcode).";s:11:"phpdoc_name";s:8:"post_url";}i:4;a:5:{s:4:"name";s:13:"hidden_fields";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:92:"A form_input_hidden buildup of hidden fields (additional parameters sent to the target URL).";s:11:"phpdoc_name";s:13:"hidden_fields";}i:5;a:5:{s:4:"name";s:14:"specialisation";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"A buildup of leading extra fields, in a format compatible with the templates used by this function.";s:11:"phpdoc_name";s:14:"specialisation";}i:6;a:7:{s:4:"name";s:12:"post_comment";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:112:"The post comment (string or Tempcode). This gives information about how you should post. (null: no post comment)";s:11:"phpdoc_name";s:12:"post_comment";}i:7;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:6:"string";s:11:"description";s:37:"Extra info to put on the posting form";s:11:"phpdoc_name";s:5:"extra";}i:8;a:7:{s:4:"name";s:15:"specialisation2";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:113:"A buildup of trailing extra fields, in a format compatible with the templates used by this function. (null: none)";s:11:"phpdoc_name";s:15:"specialisation2";}i:9;a:7:{s:4:"name";s:14:"default_parsed";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:"The parsed Comcode. (null: calculate)";s:11:"phpdoc_name";s:14:"default_parsed";}i:10;a:7:{s:4:"name";s:10:"javascript";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:"JavaScript code to include (null: none)";s:11:"phpdoc_name";s:10:"javascript";}i:11;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:12;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"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 this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:13;a:7:{s:4:"name";s:11:"has_preview";s:7:"default";s:12:"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 the form supports previewing";s:11:"phpdoc_name";s:11:"has_preview";}i:14;a:7:{s:4:"name";s:13:"avoid_wysiwyg";s:7:"default";s:13:"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:"Whether to avoid WYSIWYG mode";s:11:"phpdoc_name";s:13:"avoid_wysiwyg";}i:15;a:7:{s:4:"name";s:16:"support_autosave";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to support auto-save";s:11:"phpdoc_name";s:16:"support_autosave";}i:16;a:7:{s:4:"name";s:22:"specialisation2_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:28:"Whether to support auto-save";s:11:"phpdoc_name";s:22:"specialisation2_hidden";}i:17;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:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:16:"get_posting_form";s:11:"description";s:48:"Creates a posting form, with attachment support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The posting form";}}s:18:"get_comcode_editor";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:3:{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:47:"The name of the field the editor is working for";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:7:{s:4:"name";s:8:"cut_down";s:7:"default";s:13:"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 make a cut-down version";s:11:"phpdoc_name";s:8:"cut_down";}i:2;a:7:{s:4:"name";s:16:"is_posting_field";s:7:"default";s:13:"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 this is for a posting field (i.e. has attachment support)";s:11:"phpdoc_name";s:16:"is_posting_field";}}s:4:"name";s:18:"get_comcode_editor";s:11:"description";s:25:"Creates a Comcode editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The Comcode editor";}}s:10:"wysiwyg_on";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;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:49:"Comcode that might be WYSIWYG edited (null: none)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:10:"wysiwyg_on";s:11:"description";s:37:"Find whether WYSIWYG is currently 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:26:"filter_form_field_required";a:6:{s:8:"filename";s:26:"sources/form_templates.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:7:"ID_TEXT";s:11:"description";s:27:"The codename for this field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether it is required by default";s:11:"phpdoc_name";s:8:"required";}}s:4:"name";s:26:"filter_form_field_required";s:11:"description";s:56:"Find if a form field is required via fields.xml filters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether it is required";}}s:27:"get_field_restrict_property";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The name of the property";s:11:"phpdoc_name";s:8:"property";}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:37:"The name of the field it's scoped for";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:4:"page";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:"The page name scoped for (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:3;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:7:"?string";s:11:"description";s:45:"The page type scoped for (null: current type)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:27:"get_field_restrict_property";s:11:"description";s:76:"Get the value of a scoped field restriction property. Returns "first-found".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:33:"The property (null: non-existent)";}}s:19:"form_input_codename";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:10:"_maxlength";s:7:"default";i:40;s:11:"default_raw";s:2:"40";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:50:"The maximum length of the field (null: default 80)";s:11:"phpdoc_name";s:10:"_maxlength";}i:7;a:7:{s:4:"name";s:11:"extra_chars";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:46:"List of extra characters to allow (null: none)";s:11:"phpdoc_name";s:11:"extra_chars";}i:8;a:7:{s:4:"name";s:11:"placeholder";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:55:"The placeholder value for this input field (null: none)";s:11:"phpdoc_name";s:11:"placeholder";}}s:4:"name";s:19:"form_input_codename";s:11:"description";s:43:"Get the Tempcode for a codename input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_line";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:10:"_maxlength";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:51:"The maximum length of the field (null: default 255)";s:11:"phpdoc_name";s:10:"_maxlength";}i:7;a:7:{s:4:"name";s:4:"type";s:7:"default";s:4:"text";s:11:"default_raw";s:6:"'text'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The input type";s:11:"phpdoc_name";s:4:"type";}i:8;a:7:{s:4:"name";s:11:"placeholder";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:55:"The placeholder value for this input field (null: none)";s:11:"phpdoc_name";s:11:"placeholder";}i:9;a:7:{s:4:"name";s:7:"pattern";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:33:"Custom regex pattern (null: none)";s:11:"phpdoc_name";s:7:"pattern";}i:10;a:7:{s:4:"name";s:13:"pattern_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:50:"Custom regex pattern validation error (null: none)";s:11:"phpdoc_name";s:13:"pattern_error";}}s:4:"name";s:15:"form_input_line";s:11:"description";s:70:"Get the Tempcode for a text input line (an ).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:14:"form_input_url";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:14:"form_input_url";s:11:"description";s:27:"Get the Tempcode for a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:19:"form_input_username";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:11:"needs_match";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether it is required than a valid username is given";s:11:"phpdoc_name";s:11:"needs_match";}i:6;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:19:"form_input_username";s:11:"description";s:43:"Get the Tempcode for a username input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:17:"form_input_author";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:17:"form_input_author";s:11:"description";s:50:"Get the Tempcode for a author/username input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"form_input_email";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:16:"form_input_email";s:11:"description";s:48:"Get the Tempcode for a email-address input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:17:"form_input_colour";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:17:"form_input_colour";s:11:"description";s:36:"Get the Tempcode for a colour input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:20:"form_input_page_link";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:9:"page_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:29:"Page type to show (null: all)";s:11:"phpdoc_name";s:9:"page_type";}i:7;a:7:{s:4:"name";s:13:"get_title_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:42:"Whether to also get the title for the page";s:11:"phpdoc_name";s:13:"get_title_too";}}s:4:"name";s:20:"form_input_page_link";s:11:"description";s:39:"Get the Tempcode for a page-link input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:23:"form_input_line_comcode";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:23:"form_input_line_comcode";s:11:"description";s:55:"Get the Tempcode for a Comcode-enabled text input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_line_multi";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:145:"The base parameter name which this input field is for (as this takes multiple parameters, they are named ). This name must end with '_'.";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:13:"default_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:114:"An array of lines to use as default (at least this many lines, filled by this array, will be presented by default)";s:11:"phpdoc_name";s:13:"default_array";}i:4;a:5:{s:4:"name";s:12:"num_required";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The minimum number of inputs allowed.";s:11:"phpdoc_name";s:12:"num_required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:8:{s:4:"name";s:5:"class";s:7:"default";s:4:"line";s:11:"default_raw";s:6:"'line'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"CSS class for input.";s:11:"phpdoc_name";s:5:"class";s:3:"set";s:10:"line email";}i:7;a:7:{s:4:"name";s:7:"pattern";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:33:"Custom regex pattern (null: none)";s:11:"phpdoc_name";s:7:"pattern";}i:8;a:7:{s:4:"name";s:13:"pattern_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:50:"Custom regex pattern validation error (null: none)";s:11:"phpdoc_name";s:13:"pattern_error";}}s:4:"name";s:21:"form_input_line_multi";s:11:"description";s:119:"Get the Tempcode for a DHTML input field that takes multiple lines. A new line is added when the prior one isn't blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_text_multi";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:145:"The base parameter name which this input field is for (as this takes multiple parameters, they are named ). This name must end with '_'.";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:13:"default_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:118:"An array of texts to use as default (at least this many textareas, filled by this array, will be presented by default)";s:11:"phpdoc_name";s:13:"default_array";}i:4;a:5:{s:4:"name";s:12:"num_required";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:40:"The minimum number of textareas allowed.";s:11:"phpdoc_name";s:12:"num_required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:9:"maxlength";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 maximum length of the field (null: unlimited)";s:11:"phpdoc_name";s:9:"maxlength";}}s:4:"name";s:21:"form_input_text_multi";s:11:"description";s:127:"Get the Tempcode for a DHTML input field that takes multiple textareas. A new textarea is added when the prior one isn't blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:25:"form_input_username_multi";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:145:"The base parameter name which this input field is for (as this takes multiple parameters, they are named ). This name must end with '_'.";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:13:"default_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:114:"An array of lines to use as default (at least this many lines, filled by this array, will be presented by default)";s:11:"phpdoc_name";s:13:"default_array";}i:4;a:5:{s:4:"name";s:12:"num_required";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The minimum number of inputs allowed";s:11:"phpdoc_name";s:12:"num_required";}i:5;a:7:{s:4:"name";s:11:"needs_match";s:7:"default";s:12:"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 this is a required input field";s:11:"phpdoc_name";s:11:"needs_match";}i:6;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:25:"form_input_username_multi";s:11:"description";s:43:"Get the Tempcode for a username input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_text";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:7:"scrolls";s:7:"default";s:13:"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 the field scrolls";s:11:"phpdoc_name";s:7:"scrolls";}i:7;a:7:{s:4:"name";s:9:"maxlength";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 maximum length of the field (null: unlimited)";s:11:"phpdoc_name";s:9:"maxlength";}i:8;a:7:{s:4:"name";s:4:"rows";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:"Number of rows for text input (null: default)";s:11:"phpdoc_name";s:4:"rows";}}s:4:"name";s:15:"form_input_text";s:11:"description";s:45:"Get the Tempcode for a text input (textarea).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:23:"form_input_text_comcode";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:17:"force_non_wysiwyg";s:7:"default";s:13:"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:"Force non-WYSIWYG and non default-Comcode parsing";s:11:"phpdoc_name";s:17:"force_non_wysiwyg";}i:7;a:7:{s:4:"name";s:16:"description_side";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:49:"A secondary side description for this input field";s:11:"phpdoc_name";s:16:"description_side";}i:8;a:7:{s:4:"name";s:14:"default_parsed";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:"The parsed Comcode. (null: calculate)";s:11:"phpdoc_name";s:14:"default_parsed";}i:9;a:7:{s:4:"name";s:7:"scrolls";s:7:"default";s:13:"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 the field scrolls";s:11:"phpdoc_name";s:7:"scrolls";}i:10;a:7:{s:4:"name";s:4:"rows";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:"Number of rows for text input (null: default)";s:11:"phpdoc_name";s:4:"rows";}}s:4:"name";s:23:"form_input_text_comcode";s:11:"description";s:61:"Get the Tempcode for a Comcode-enabled text input (textarea).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:23:"form_input_huge_comcode";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:4:"rows";s:7:"default";i:20;s:11:"default_raw";s:2:"20";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"The number of rows to use";s:11:"phpdoc_name";s:4:"rows";}i:7;a:7:{s:4:"name";s:16:"description_side";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:49:"A secondary side description for this input field";s:11:"phpdoc_name";s:16:"description_side";}i:8;a:7:{s:4:"name";s:14:"default_parsed";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:"The parsed Comcode. (null: calculate)";s:11:"phpdoc_name";s:14:"default_parsed";}i:9;a:7:{s:4:"name";s:7:"scrolls";s:7:"default";s:13:"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 the field scrolls";s:11:"phpdoc_name";s:7:"scrolls";}i:10;a:7:{s:4:"name";s:17:"force_non_wysiwyg";s:7:"default";s:13:"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:"Force non-WYSIWYG and non default-Comcode parsing";s:11:"phpdoc_name";s:17:"force_non_wysiwyg";}}s:4:"name";s:23:"form_input_huge_comcode";s:11:"description";s:238:"Get the Tempcode for a huge comcode-enabled text input (textarea). These need extra space to fit. This function is also used as an automatic replacement for form_input_text_comcode if WYSIWYG is available (as WYSIWYG needs more space too)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_huge";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:4:"rows";s:7:"default";i:20;s:11:"default_raw";s:2:"20";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"The number of rows to use";s:11:"phpdoc_name";s:4:"rows";}i:7;a:7:{s:4:"name";s:16:"description_side";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:49:"A secondary side description for this input field";s:11:"phpdoc_name";s:16:"description_side";}i:8;a:7:{s:4:"name";s:7:"scrolls";s:7:"default";s:13:"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 the field scrolls";s:11:"phpdoc_name";s:7:"scrolls";}}s:4:"name";s:15:"form_input_huge";s:11:"description";s:50:"Get the Tempcode for a huge text input (textarea).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:19:"form_input_password";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;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:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:19:"form_input_password";s:11:"description";s:38:"Get the Tempcode for a password input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_tick";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:6:"ticked";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether this is ticked by default";s:11:"phpdoc_name";s:6:"ticked";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;a:7:{s:4:"name";s:5:"value";s:7:"default";s:1:"1";s:11:"default_raw";s:3:"'1'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The value the checkbox passes when ticked";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:15:"form_input_tick";s:11:"description";s:38:"Get the Tempcode for a checkbox input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:24:"form_input_various_ticks";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"A list of tuples: (prettyname, name, value, description)";s:11:"phpdoc_name";s:7:"options";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:9:"_tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:9:"_tabindex";}i:3;a:7:{s:4:"name";s:12:"_pretty_name";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:67:"A human intelligible name for this input field (blank: use default)";s:11:"phpdoc_name";s:12:"_pretty_name";}i:4;a:7:{s:4:"name";s:12:"simple_style";s:7:"default";s:13:"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 place each tick on a new line";s:11:"phpdoc_name";s:12:"simple_style";}i:5;a:7:{s:4:"name";s:11:"custom_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:70:"Name for custom value to be entered to (null: no custom value allowed)";s:11:"phpdoc_name";s:11:"custom_name";}i:6;a:7:{s:4:"name";s:12:"custom_value";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:116:"Value for custom value, string (accept single value) or array (accept multiple values) (null: no custom value known)";s:11:"phpdoc_name";s:12:"custom_value";}}s:4:"name";s:24:"form_input_various_ticks";s:11:"description";s:42:"Get the Tempcode for a bank of tick boxes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:30:"form_input_upload_multi_source";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"set_title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:9:"set_title";}i:1;a:5:{s:4:"name";s:15:"set_description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:15:"set_description";}i:2;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:48:"A reference to where we're putting hidden fields";s:11:"phpdoc_name";s:6:"hidden";}i:3;a:7:{s:4:"name";s:8:"set_name";s:7:"default";s:5:"image";s:11:"default_raw";s:7:"'image'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:106:"The name which this input field is for (actually, this is a prefix put in front of different input types).";s:11:"phpdoc_name";s:8:"set_name";}i:4;a:7:{s:4:"name";s:16:"theme_image_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:91:"The directory of theme images to provide selection from (null: do not support theme images)";s:11:"phpdoc_name";s:16:"theme_image_type";}i:5;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:215:"Whether this is a required input field. Set this to false if you are using this field on an edit form and already have an uploaded file -- therefore you'd know no new file would mean not to replace the existing file";s:11:"phpdoc_name";s:8:"required";}i:6;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:209:"The default value for the field (null: none) (blank: none). Should only be passed if $required is false, because it creates a delete button for the existing file, implying that leaving it with no file is valid";s:11:"phpdoc_name";s:7:"default";}i:7;a:7:{s:4:"name";s:19:"support_syndication";s:7:"default";s:13:"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 syndicate the file off";s:11:"phpdoc_name";s:19:"support_syndication";}i:8;a:7:{s:4:"name";s:6:"filter";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:35:"File type filter (null: autodetect)";s:11:"phpdoc_name";s:6:"filter";}i:9;a:7:{s:4:"name";s:11:"images_only";s:7:"default";s:12:"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 accept images only";s:11:"phpdoc_name";s:11:"images_only";}}s:4:"name";s:30:"form_input_upload_multi_source";s:11:"description";s:172:"Get the Tempcode for a multi-set upload, allowing selection from multiple different sources.Mainly for images, used with post_param_image or post_param_multi_source_upload.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:17:"form_input_upload";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:215:"Whether this is a required input field. Set this to false if you are using this field on an edit form and already have an uploaded file -- therefore you'd know no new file would mean not to replace the existing file";s:11:"phpdoc_name";s:8:"required";}i:4;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:209:"The default value for the field (null: none) (blank: none). Should only be passed if $required is false, because it creates a delete button for the existing file, implying that leaving it with no file is valid";s:11:"phpdoc_name";s:7:"default";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:8:"plupload";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether plupload-style is preferred";s:11:"phpdoc_name";s:8:"plupload";}i:7;a:7:{s:4:"name";s:6:"filter";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:86:"File-type filter to limit to, comma-separated file extensions (might not be supported)";s:11:"phpdoc_name";s:6:"filter";}i:8;a:7:{s:4:"name";s:16:"syndication_json";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:71:"JSON structure of what uploader syndications there will be (null: none)";s:11:"phpdoc_name";s:16:"syndication_json";}}s:4:"name";s:17:"form_input_upload";s:11:"description";s:41:"Get the Tempcode for a file upload input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:23:"form_input_upload_multi";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:6:"string";s:11:"description";s:43:"The base name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;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:"?array";s:11:"description";s:44:"The default value for the field (null: none)";s:11:"phpdoc_name";s:7:"default";}i:6;a:7:{s:4:"name";s:8:"plupload";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether plupload-style is preferred";s:11:"phpdoc_name";s:8:"plupload";}i:7;a:7:{s:4:"name";s:6:"filter";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:86:"File-type filter to limit to, comma-separated file extensions (might not be supported)";s:11:"phpdoc_name";s:6:"filter";}i:8;a:7:{s:4:"name";s:16:"syndication_json";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:71:"JSON structure of what uploader syndications there will be (null: none)";s:11:"phpdoc_name";s:16:"syndication_json";}}s:4:"name";s:23:"form_input_upload_multi";s:11:"description";s:50:"Get the Tempcode for a multiple file upload input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_list";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"The list entries for our list; you compose these via attaching together form_input_list_entry calls";s:11:"phpdoc_name";s:7:"content";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;a:7:{s:4:"name";s:11:"inline_list";s:7:"default";s:13:"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 this is an inline displayed list as opposed to a dropdown";s:11:"phpdoc_name";s:11:"inline_list";}i:6;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether this is required";s:11:"phpdoc_name";s:8:"required";}i:7;a:7:{s:4:"name";s:6:"images";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:139:"List of theme images that $content is allowing selection of (so that we can show the images within the list, if JS is enabled) (null: none)";s:11:"phpdoc_name";s:6:"images";}i:8;a:7:{s:4:"name";s:4:"size";s:7:"default";i:5;s:11:"default_raw";s:1:"5";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:52:"How much space the list takes up (inline lists only)";s:11:"phpdoc_name";s:4:"size";}}s:4:"name";s:15:"form_input_list";s:11:"description";s:31:"Get the Tempcode for a listbox.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:20:"form_input_huge_list";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"The list entries for our list; you compose these via attaching together form_input_list_entry calls";s:11:"phpdoc_name";s:7:"content";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;a:7:{s:4:"name";s:11:"inline_list";s:7:"default";s:13:"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 this is an inline displayed list as opposed to a dropdown";s:11:"phpdoc_name";s:11:"inline_list";}i:6;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether this is required";s:11:"phpdoc_name";s:8:"required";}i:7;a:7:{s:4:"name";s:4:"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:28:"Size of list (null: default)";s:11:"phpdoc_name";s:4:"size";}}s:4:"name";s:20:"form_input_huge_list";s:11:"description";s:36:"Get the Tempcode for a huge listbox.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_multi_list";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"The list entries for our list; you compose these via attaching together form_input_list_entry calls";s:11:"phpdoc_name";s:7:"content";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;a:7:{s:4:"name";s:4:"size";s:7:"default";i:5;s:11:"default_raw";s:1:"5";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"How much space the list takes up";s:11:"phpdoc_name";s:4:"size";}i:6;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:37:"Whether at least one must be selected";s:11:"phpdoc_name";s:8:"required";}i:7;a:7:{s:4:"name";s:11:"custom_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:70:"Name for custom value to be entered to (null: no custom value allowed)";s:11:"phpdoc_name";s:11:"custom_name";}i:8;a:7:{s:4:"name";s:12:"custom_value";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:116:"Value for custom value, string (accept single value) or array (accept multiple values) (null: no custom value known)";s:11:"phpdoc_name";s:12:"custom_value";}}s:4:"name";s:21:"form_input_multi_list";s:11:"description";s:56:"Get the Tempcode for a listbox with multiple selections.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"form_input_combo";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Current selection";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"The list entries for our list; you compose these via attaching together form_input_list_entry calls";s:11:"phpdoc_name";s:7:"options";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether this is required";s:11:"phpdoc_name";s:8:"required";}}s:4:"name";s:16:"form_input_combo";s:11:"description";s:98:"Get the Tempcode for a combo-box (listbox with free text input). Works best if HTML5 is available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:20:"form_input_tree_list";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"root_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:7:"root_id";}i:4;a:5:{s:4:"name";s:4:"hook";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The ajax tree-list hook that drives our data";s:11:"phpdoc_name";s:4:"hook";}i:5;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"A map of special options";s:11:"phpdoc_name";s:7:"options";}i:6;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:7;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:44:"The default value for the field (null: none)";s:11:"phpdoc_name";s:7:"default";}i:8;a:7:{s:4:"name";s:13:"use_server_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:70:"Whether to use the server-ID in the list instead of the ID in the list";s:11:"phpdoc_name";s:13:"use_server_id";}i:9;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:10;a:7:{s:4:"name";s:12:"multi_select";s:7:"default";s:13:"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 multiple selections are allowed";s:11:"phpdoc_name";s:12:"multi_select";}i:11;a:7:{s:4:"name";s:10:"nice_label";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:52:"Label for default value (null: just use the literal)";s:11:"phpdoc_name";s:10:"nice_label";}}s:4:"name";s:20:"form_input_tree_list";s:11:"description";s:50:"Get the Tempcode for an AJAX-powered tree listbox.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:22:"form_input_all_and_not";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:4:"base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The base name which this input field is for";s:11:"phpdoc_name";s:4:"base";}i:3;a:5:{s:4:"name";s:4:"list";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:36:"A list culmulation to select against";s:11:"phpdoc_name";s:4:"list";}i:4;a:8:{s:4:"name";s:4:"type";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:37:"The current type of partial selection";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:5:"+ - *";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:22:"form_input_all_and_not";s:11:"description";s:111:"Get the Tempcode for a complex input that chooses partials from a list ('all', 'all-except-these', or 'these').";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"form_input_radio";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:108:"The radio buttons for our radio group; you compose these via attaching together form_input_radio_entry calls";s:11:"phpdoc_name";s:7:"content";}i:4;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:37:"Whether a radio selection is required";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:16:"picture_contents";s:7:"default";s:13:"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 this is a picture-based radio list";s:11:"phpdoc_name";s:16:"picture_contents";}i:6;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:6:"string";s:11:"description";s:56:"Default value (only appropriate if has picture contents)";s:11:"phpdoc_name";s:13:"selected_path";}}s:4:"name";s:16:"form_input_radio";s:11:"description";s:35:"Get the Tempcode for a radio group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:22:"form_input_radio_entry";a:6:{s:8:"filename";s:26:"sources/form_templates.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:128:"The name of the radio button group this will be put in (i.e. the name the value presented here will be possibly matched against)";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The value for this entry";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:8:"selected";s:7:"default";s:13:"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 this entry is selected by default or not";s:11:"phpdoc_name";s:8:"selected";}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:69:"The text associated with this choice (blank: just use value for text)";s:11:"phpdoc_name";s:4:"text";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}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:5:"mixed";s:11:"description";s:54:"An additional long description (blank: no description)";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:22:"form_input_radio_entry";s:11:"description";s:176:"Get the Tempcode for a radio input. (You would gather together the outputs of several of these functions, then put them in as the $content in a form_input_radio function call).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:22:"form_input_theme_image";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:3:"ids";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:89:"A list of image IDs (codes) we can choose from, probably found via get_all_image_ids_type";s:11:"phpdoc_name";s:3:"ids";}i:4;a:7:{s:4:"name";s:12:"selected_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:73:"The currently selected entry in our picture choosing, by URL (null: none)";s:11:"phpdoc_name";s:12:"selected_url";}i:5;a:7:{s:4:"name";s:13:"selected_code";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:74:"The currently selected entry in our picture choosing, by code (null: none)";s:11:"phpdoc_name";s:13:"selected_code";}i:6;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:7;a:7:{s:4:"name";s:10:"allow_none";s:7:"default";s:13:"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:"Whether to allow the selection of 'no' picture";s:11:"phpdoc_name";s:10:"allow_none";}i:8;a:7:{s:4:"name";s:2:"db";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:91:"The database connection to the Conversr install we are choosing images from (null: site db)";s:11:"phpdoc_name";s:2:"db";}i:9;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:34:"Theme to use (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}i:10;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:8:"?ID_TEXT";s:11:"description";s:40:"Language to use (null: current language)";s:11:"phpdoc_name";s:4:"lang";}i:11;a:7:{s:4:"name";s:6:"linear";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether choices are presented in a list (as opposed to a grid); useful when sizes are irregular";s:11:"phpdoc_name";s:6:"linear";}i:12;a:7:{s:4:"name";s:13:"direct_titles";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:81:"Whether to show direct codenames, rather than trying to prettify them into titles";s:11:"phpdoc_name";s:13:"direct_titles";}}s:4:"name";s:22:"form_input_theme_image";s:11:"description";s:118:"Get the Tempcode to choose a picture from the given list of images in the theme image system, with sub-categorisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:26:"form_input_date__scheduler";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:39:"The parameter name for this input field";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether this is a required field";s:11:"phpdoc_name";s:8:"required";}i:4;a:5:{s:4:"name";s:12:"null_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this field is empty by default";s:11:"phpdoc_name";s:12:"null_default";}i:5;a:5:{s:4:"name";s:7:"do_time";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to input time for this field also";s:11:"phpdoc_name";s:7:"do_time";}i:6;a:7:{s:4:"name";s:12:"default_time";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:116:"The default timestamp to use (either TIME or array of time components) (null: now) [ignored if $null_default is set]";s:11:"phpdoc_name";s:12:"default_time";}i:7;a:7:{s:4:"name";s:19:"total_years_to_show";s:7:"default";i:10;s:11:"default_raw";s:2:"10";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:123:"The number of years to allow selection from (all into the future, as this field type is not meant for inputting past dates)";s:11:"phpdoc_name";s:19:"total_years_to_show";}i:8;a:7:{s:4:"name";s:10:"year_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:40:"The year to start from (null: this year)";s:11:"phpdoc_name";s:10:"year_start";}i:9;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:26:"form_input_date__scheduler";s:11:"description";s:70:"Get the Tempcode for a date input, or if cron is not on, return blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_date";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:39:"The parameter name for this input field";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether this is not a required field";s:11:"phpdoc_name";s:8:"required";}i:4;a:5:{s:4:"name";s:12:"null_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this field is empty by default";s:11:"phpdoc_name";s:12:"null_default";}i:5;a:5:{s:4:"name";s:7:"do_time";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to input time for this field also";s:11:"phpdoc_name";s:7:"do_time";}i:6;a:7:{s:4:"name";s:12:"default_time";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:116:"The default timestamp to use (either TIME or array of time components) (null: now) [ignored if $null_default is set]";s:11:"phpdoc_name";s:12:"default_time";}i:7;a:7:{s:4:"name";s:19:"total_years_to_show";s:7:"default";i:10;s:11:"default_raw";s:2:"10";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:137:"The number of years to allow selection from (pass a negative number for selection of past years instead of future years) (null: no limit)";s:11:"phpdoc_name";s:19:"total_years_to_show";}i:8;a:7:{s:4:"name";s:10:"year_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:40:"The year to start from (null: this year)";s:11:"phpdoc_name";s:10:"year_start";}i:9;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:10;a:7:{s:4:"name";s:7:"do_date";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether to input date for this field (if false, will just do time)";s:11:"phpdoc_name";s:7:"do_date";}i:11;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:52:"Timezone to input in (null: current user's timezone)";s:11:"phpdoc_name";s:8:"timezone";}i:12;a:7:{s:4:"name";s:15:"handle_timezone";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Convert $default_time to $timezone";s:11:"phpdoc_name";s:15:"handle_timezone";}}s:4:"name";s:15:"form_input_date";s:11:"description";s:74:"Get the Tempcode for a date input. Use post_param_date to read the result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"_form_input_date";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:39:"The parameter name for this input field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether this is a required field";s:11:"phpdoc_name";s:8:"required";}i:2;a:5:{s:4:"name";s:12:"null_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this field is empty by default";s:11:"phpdoc_name";s:12:"null_default";}i:3;a:5:{s:4:"name";s:7:"do_time";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to input time for this field also";s:11:"phpdoc_name";s:7:"do_time";}i:4;a:7:{s:4:"name";s:12:"default_time";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:116:"The default timestamp to use (either TIME or array of time components) (null: now) [ignored if $null_default is set]";s:11:"phpdoc_name";s:12:"default_time";}i:5;a:7:{s:4:"name";s:19:"total_years_to_show";s:7:"default";i:10;s:11:"default_raw";s:2:"10";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:137:"The number of years to allow selection from (pass a negative number for selection of past years instead of future years) (null: no limit)";s:11:"phpdoc_name";s:19:"total_years_to_show";}i:6;a:7:{s:4:"name";s:10:"year_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:40:"The year to start from (null: this year)";s:11:"phpdoc_name";s:10:"year_start";}i:7;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:8;a:7:{s:4:"name";s:7:"do_date";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether to input date for this field (if false, will just do time)";s:11:"phpdoc_name";s:7:"do_date";}i:9;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:52:"Timezone to input in (null: current user's timezone)";s:11:"phpdoc_name";s:8:"timezone";}i:10;a:7:{s:4:"name";s:15:"handle_timezone";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Convert $default_time to $timezone";s:11:"phpdoc_name";s:15:"handle_timezone";}}s:4:"name";s:16:"_form_input_date";s:11:"description";s:39:"Get the Tempcode for a date input, raw.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:18:"form_input_integer";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:57:"The default value for this input field (null: no default)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:18:"form_input_integer";s:11:"description";s:43:"Get the Tempcode for an integer-only input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_dimensions";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:10:"name_width";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The name which this input field is for: width part";s:11:"phpdoc_name";s:10:"name_width";}i:3;a:5:{s:4:"name";s:11:"name_height";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:51:"The name which this input field is for: height part";s:11:"phpdoc_name";s:11:"name_height";}i:4;a:5:{s:4:"name";s:13:"default_width";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:69:"The default value for this input field: width part (null: no default)";s:11:"phpdoc_name";s:13:"default_width";}i:5;a:5:{s:4:"name";s:14:"default_height";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:70:"The default value for this input field: height part (null: no default)";s:11:"phpdoc_name";s:14:"default_height";}i:6;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:7;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:21:"form_input_dimensions";s:11:"description";s:43:"Get the Tempcode for an width/height input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"form_input_float";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"?float";s:11:"description";s:57:"The default value for this input field (null: no default)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:16:"form_input_float";s:11:"description";s:40:"Get the Tempcode for a float-only input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:27:"alternate_fields_set__start";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"set_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The codename for this field set";s:11:"phpdoc_name";s:8:"set_name";}}s:4:"name";s:27:"alternate_fields_set__start";s:11:"description";s:209:"Start off a field set.IMPORTANT: Note that this function uses global state -- any fields generated between alternate_fields_set__start and alternate_fields_set__end will be rendered using field set templating.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:44:"Tempcode to start attaching the field set to";}}s:25:"alternate_fields_set__end";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"set_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:85:"The codename for this field set (blank: just collect raw fields, no actual field set)";s:11:"phpdoc_name";s:8:"set_name";}i:1;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:42:"The human-readable name for this field set";s:11:"phpdoc_name";s:11:"pretty_name";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:49:"The human-readable description for this field set";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The field set Tempcode";s:11:"phpdoc_name";s:6:"fields";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether it is required that this field set be filled in";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:26:"existing_image_preview_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:84:"Image URL to show, of the existing selection for this field (null: N/A) (blank: N/A)";s:11:"phpdoc_name";s:26:"existing_image_preview_url";}i:6;a:7:{s:4:"name";s:3:"raw";s:7:"default";s:13:"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 just want the raw set contents, without any wrapper field row";s:11:"phpdoc_name";s:3:"raw";}}s:4:"name";s:25:"alternate_fields_set__end";s:11:"description";s:49:"Show a field set that has just been finished off.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The field set";}}s:19:"single_field__start";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"single_field__start";s:11:"description";s:94:"Start serving single field. This is used if you just need the raw widget, not the label (etc).";s:5:"flags";a:0:{}}s:17:"single_field__end";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"single_field__end";s:11:"description";s:26:"Stop serving single field.";s:5:"flags";a:0:{}}s:13:"form_input_na";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The human-readable name for this field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:7:{s:4:"name";s:8:"tabindex";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:36:"The tab index (null: none specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:13:"form_input_na";s:11:"description";s:44:"Used to create a null option for field sets.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The field";}}s:11:"_form_input";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"The codename for this field (blank: N/A)";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The human-readable name for this field";s:11:"phpdoc_name";s:11:"pretty_name";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"The human-readable description for this field";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"The actual raw input field";s:11:"phpdoc_name";s:5:"input";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether it is required that this field be filled in";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:7:"comcode";s:7:"default";s:13:"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 this field may contain Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:6;a:7:{s:4:"name";s:8:"tabindex";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:36:"The tab index (null: none specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:7;a:7:{s:4:"name";s:1:"w";s:7:"default";s:13:"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 it is a textarea field";s:11:"phpdoc_name";s:1:"w";}i:8;a:7:{s:4:"name";s:10:"skip_label";s:7:"default";s:13:"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 displaying a label for the field";s:11:"phpdoc_name";s:10:"skip_label";}i:9;a:7:{s:4:"name";s:16:"description_side";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:49:"A secondary side description for this input field";s:11:"phpdoc_name";s:16:"description_side";}i:10;a:7:{s:4:"name";s:13:"pattern_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:50:"Custom regex pattern validation error (null: none)";s:11:"phpdoc_name";s:13:"pattern_error";}}s:4:"name";s:11:"_form_input";s:11:"description";s:39:"Helper function to show an input field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The field";}}s:26:"handle_conflict_resolution";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:2:{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:49:"The ID we're editing (null: get from param, 'id')";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:10:"only_staff";s:7:"default";s:13:"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 care about staff conflicts";s:11:"phpdoc_name";s:10:"only_staff";}}s:4:"name";s:26:"handle_conflict_resolution";s:11:"description";s:54:"Look for editing conflicts, and setup editing pinging.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: warning details, ping url";}}s:23:"get_form_field_tabindex";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"tabindex";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:"Requested tab-index (null: no specific request)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:23:"get_form_field_tabindex";s:11:"description";s:65:"Helper function for tab-index linearisation (serves as a filter).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"Used tab-index";}}s:16:"init__forum__cns";a:5:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__forum__cns";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"init__forum__ipb1";a:5:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__forum__ipb1";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:14:"_hash_encode64";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"To encode";s:11:"phpdoc_name";s:5:"input";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"How many chars to encode";s:11:"phpdoc_name";s:5:"count";}i:2;a:5:{s:4:"name";s:6:"itoa64";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:28:"Lookup table used internally";s:11:"phpdoc_name";s:6:"itoa64";}}s:4:"name";s:14:"_hash_encode64";s:11:"description";s:18:"phpBB: Encode hash";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The encoded output";}}s:19:"_hash_crypt_private";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:3:{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:9:"To encode";s:11:"phpdoc_name";s:8:"password";}i:1;a:5:{s:4:"name";s:7:"setting";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Encode settings in special format";s:11:"phpdoc_name";s:7:"setting";}i:2;a:5:{s:4:"name";s:6:"itoa64";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:28:"Lookup table used internally";s:11:"phpdoc_name";s:6:"itoa64";}}s:4:"name";s:19:"_hash_crypt_private";s:11:"description";s:99:"phpBB: The crypt function/replacementGet 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:7:"~string";s:11:"description";s:33:"The encoded output (false: error)";}}s:16:"init__forum_stub";a:5:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__forum_stub";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"init__galleries";a:5:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__galleries";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"render_image_box";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:6:{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:13:"The image row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The zone the galleries module is in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_image_box";s:11:"description";s:20:"Render an image box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The rendered box";}}s:16:"render_video_box";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:6:{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:13:"The video row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The zone the galleries module is in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_video_box";s:11:"description";s:19:"Render a video box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The rendered box";}}s:18:"render_gallery_box";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:10:{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:31:"The database row of the gallery";s:11:"phpdoc_name";s:5:"myrow";}i:1;a:7:{s:4:"name";s:4:"root";s:7:"default";s:4:"root";s:11:"default_raw";s:6:"'root'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The virtual root of the gallery";s:11:"phpdoc_name";s:4:"root";}i:2;a:7:{s:4:"name";s:32:"show_member_stats_if_appropriate";s:7:"default";s:13:"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 show member stats if it is a member owned gallery";s:11:"phpdoc_name";s:32:"show_member_stats_if_appropriate";}i:3;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"The zone that the gallery module we are linking to is in";s:11:"phpdoc_name";s:4:"zone";}i:4;a:7:{s:4:"name";s:13:"quit_if_empty";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to not show anything if the gallery is empty";s:11:"phpdoc_name";s:13:"quit_if_empty";}i:5;a:7:{s:4:"name";s:7:"preview";s:7:"default";s:13:"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 only to show 'preview' details";s:11:"phpdoc_name";s:7:"preview";}i:6;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:7;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:8;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:9;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:18:"render_gallery_box";s:11:"description";s:36:"Get preview detailing for a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The preview";}}s:23:"get_default_gallery_max";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_default_gallery_max";s:11:"description";s:60:"Find the default number of images per page in the galleries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Images per page";}}s:19:"gallery_has_content";a:6:{s:8:"filename";s:21:"sources/galleries.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:7:"ID_TEXT";s:11:"description";s:23:"The name of the gallery";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:19:"gallery_has_content";s:11:"description";s:81:"Find whether a certain gallery has any content (images, videos, or subgalleries).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"The answer";}}s:31:"get_member_id_from_gallery_name";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:3:{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:23:"The name of the gallery";s:11:"phpdoc_name";s:12:"gallery_name";}i:1;a:7:{s:4:"name";s:3:"row";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:30:"Gallery row (null: look it up)";s:11:"phpdoc_name";s:3:"row";}i:2;a:7:{s:4:"name";s:24:"only_if_personal_gallery";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Only non-null if it is a personal gallery";s:11:"phpdoc_name";s:24:"only_if_personal_gallery";}}s:4:"name";s:31:"get_member_id_from_gallery_name";s:11:"description";s:28:"Find the owner of a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:59:"The owner of the gallery (null: not a member owned gallery)";}}s:18:"show_video_details";a:6:{s:8:"filename";s:21:"sources/galleries.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:29:"The database row of the video";s:11:"phpdoc_name";s:5:"myrow";}}s:4:"name";s:18:"show_video_details";s:11:"description";s:34:"Get preview detailing for a video.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The preview";}}s:29:"get_recursive_gallery_details";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The name of the gallery";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:11:"test_videos";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:87:"Whether to test for videos when making counts (ignore this parameter - used internally)";s:11:"phpdoc_name";s:11:"test_videos";}i:2;a:7:{s:4:"name";s:11:"test_images";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:87:"Whether to test for images when making counts (ignore this parameter - used internally)";s:11:"phpdoc_name";s:11:"test_images";}}s:4:"name";s:29:"get_recursive_gallery_details";s:11:"description";s:41:"Get details of the contents of a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A triplet: (num children, num images, num videos)";}}s:23:"only_download_galleries";a:6:{s:8:"filename";s:21:"sources/galleries.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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:23:"only_download_galleries";s:11:"description";s:67:"See whether a gallery is a download gallery (designed as a filter).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the gallery is a download gallery";}}s:27:"only_conventional_galleries";a:6:{s:8:"filename";s:21:"sources/galleries.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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:27:"only_conventional_galleries";s:11:"description";s:71:"See whether a gallery is NOT a download gallery (designed as a filter).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether the gallery is NOT a download gallery";}}s:30:"only_galleries_accepting_media";a:6:{s:8:"filename";s:21:"sources/galleries.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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:30:"only_galleries_accepting_media";s:11:"description";s:64:"See whether a gallery accepts some media (designed as a filter).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the gallery accepts some media";}}s:27:"only_member_galleries_of_id";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:3:{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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:46:"Member we are filtering for (null: not needed)";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:11:"child_count";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:39:"The number of children for this gallery";s:11:"phpdoc_name";s:11:"child_count";}}s:4:"name";s:27:"only_member_galleries_of_id";s:11:"description";s:140:"See whether the GET parameter 'id' is of a gallery that is a member gallery of the given member gallery container, or just a normal gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"The answer";}}s:34:"create_selection_list_gallery_tree";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:10:{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:60:"The gallery to select by default (null: no specific default)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:6:"filter";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:58:"A function name to filter galleries with (null: no filter)";s:11:"phpdoc_name";s:6:"filter";}i:2;a:7:{s:4:"name";s:18:"must_accept_images";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether displayed galleries must support images";s:11:"phpdoc_name";s:18:"must_accept_images";}i:3;a:7:{s:4:"name";s:18:"must_accept_videos";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether displayed galleries must support videos";s:11:"phpdoc_name";s:18:"must_accept_videos";}i:4;a:7:{s:4:"name";s:6:"purity";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to NOT show member galleries that do not exist yet";s:11:"phpdoc_name";s:6:"purity";}i:5;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to get a list of child galleries (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:6;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:46:"Member we are filtering for (null: not needed)";s:11:"phpdoc_name";s:9:"member_id";}i:7;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:8;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}i:9;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:34:"create_selection_list_gallery_tree";s:11:"description";s:110:"Gets a gallery selection tree list, extending deeper from the given gallery, showing all sub(sub...)galleries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The tree list";}}s:16:"get_gallery_tree";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:13:{i:0;a:7:{s:4:"name";s:7:"gallery";s:7:"default";s:4:"root";s:11:"default_raw";s:6:"'root'";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:62:"The gallery we are getting the tree starting from (null: root)";s:11:"phpdoc_name";s:7:"gallery";}i:1;a:7:{s:4:"name";s:11:"breadcrumbs";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:53:"The parent breadcrumbs at this point of the recursion";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:2;a:7:{s:4:"name";s:12:"gallery_info";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:68:"The database row for the $gallery gallery (null: get it from the DB)";s:11:"phpdoc_name";s:12:"gallery_info";}i:3;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 include video/image statistics in the returned tree";s:11:"phpdoc_name";s:8:"do_stats";}i:4;a:7:{s:4:"name";s:6:"filter";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:81:"A function name to filter galleries with OR a Selectcode string (null: no filter)";s:11:"phpdoc_name";s:6:"filter";}i:5;a:7:{s:4:"name";s:18:"must_accept_images";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether displayed galleries must support images";s:11:"phpdoc_name";s:18:"must_accept_images";}i:6;a:7:{s:4:"name";s:18:"must_accept_videos";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether displayed galleries must support videos";s:11:"phpdoc_name";s:18:"must_accept_videos";}i:7;a:7:{s:4:"name";s:6:"purity";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to NOT show member galleries that do not exist yet";s:11:"phpdoc_name";s:6:"purity";}i:8;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to get a list of child galleries (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:9;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:10;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:46:"Member we are filtering for (null: not needed)";s:11:"phpdoc_name";s:9:"member_id";}i:11;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:12;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:16:"get_gallery_tree";s:11:"description";s:110:"Gets a gallery selection tree list, extending deeper from the given gallery, showing all sub(sub...)galleries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:144:"The tree structure, or if $use_compound_list, the tree structure built with pairs containing the compound list in addition to the child branches";}}s:21:"can_submit_to_gallery";a:6:{s:8:"filename";s:21:"sources/galleries.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:7:"ID_TEXT";s:11:"description";s:16:"The gallery name";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:12:"gallery_info";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:35:"Gallery database row (null: lookup)";s:11:"phpdoc_name";s:12:"gallery_info";}}s:4:"name";s:21:"can_submit_to_gallery";s:11:"description";s:190:"See whether the current member can submit to the named *member* gallery. Note - this function assumes that members have general submit permission, and does not check for gallery read access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:94:"The owner of the gallery (false: we aren't allowed to submit to it) (-2: not a member gallery)";}}s:19:"gallery_breadcrumbs";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"gallery";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The gallery name";s:11:"phpdoc_name";s:7:"gallery";}i:1;a:7:{s:4:"name";s:4:"root";s:7:"default";s:4:"root";s:11:"default_raw";s:6:"'root'";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:29:"The virtual root (null: none)";s:11:"phpdoc_name";s:4:"root";}i:2;a:7:{s:4:"name";s:18:"no_link_for_me_sir";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:105:"Whether not to put a link at this point in the breadcrumbs (usually, because the viewer is already at it)";s:11:"phpdoc_name";s:18:"no_link_for_me_sir";}i:3;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:48:"The zone that the linked to gallery module is in";s:11:"phpdoc_name";s:4:"zone";}i:4;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}}s:4:"name";s:19:"gallery_breadcrumbs";s:11:"description";s:71:"Get a route from a known gallery back to the declared root of the tree.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The navigation element";}}s:42:"create_selection_list_gallery_content_tree";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:5:{i:0;a:6:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The table we are working with";s:11:"phpdoc_name";s:5:"table";s:3:"set";s:13:"images videos";}i:1;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:50:"The currently selected entry (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:2;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:10:"?AUTO_LINK";s:11:"description";s:66:"Only show images/videos submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}i:3;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to get a list of child galleries (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:4;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:42:"create_selection_list_gallery_content_tree";s:11:"description";s:78:"Get a nice, formatted XHTML list of gallery entries, in gallery tree structure";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The list of entries";}}s:24:"get_gallery_content_tree";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:8:{i:0;a:6:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The table we are working with";s:11:"phpdoc_name";s:5:"table";s:3:"set";s:13:"images videos";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:66:"Only show images/videos submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}i:2;a:7:{s:4:"name";s:7:"gallery";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:64:"The gallery being at the root of our recursion (null: true root)";s:11:"phpdoc_name";s:7:"gallery";}i:3;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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:4;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:8:"?ID_TEXT";s:11:"description";s:180:"The name of the $gallery we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:5:"title";}i:5;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:6;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to get a list of child galleries (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:7;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:24:"get_gallery_content_tree";s:11:"description";s:141:"Get a list of maps containing all the gallery entries, and path information, under the specified gallery - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:301:"A list of maps for all galleries. Each map entry containins the fields 'id' (gallery ID) and 'breadcrumbs' (path to the category, including the categories own title), and more. Or if $use_compound_list, the tree structure built with pairs containing the compound list in addition to the child branches";}}s:24:"show_gallery_video_media";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:6:{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:12:"URL to media";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:16:"URL to thumbnail";s:11:"phpdoc_name";s:9:"thumb_url";}i:2;a:5:{s:4:"name";s:5:"width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Width";s:11:"phpdoc_name";s:5:"width";}i:3;a:5:{s:4:"name";s:6:"height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Height";s:11:"phpdoc_name";s:6:"height";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Length";s:11:"phpdoc_name";s:6:"length";}i:5;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";}}s:4:"name";s:24:"show_gallery_video_media";s:11:"description";s:144:"Show a gallery media entry (not an image, something more complex); all these will render under the 'video' type even if they're technically not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Displayed media";}}s:17:"get_video_details";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"file_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:26:"The path to the video file";s:11:"phpdoc_name";s:9:"file_path";}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:94:"The original filename of the video file (so we can find the file type from the file extension)";s:11:"phpdoc_name";s:8:"filename";}i:2;a:7:{s:4:"name";s:12:"delay_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:169:"Whether to skip over errored files instead of dying. We don't currently make use of this as our readers aren't sophisticard enough to properly spot erroneous situations.";s:11:"phpdoc_name";s:12:"delay_errors";}}s:4:"name";s:17:"get_video_details";s:11:"description";s:111:"Get width,height,length of a video file. Note: unfortunately mpeg is not possible without huge amounts of code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:113:"The triplet of width/height/length (possibly containing nulls for when we can't detect properties) (false: error)";}}s:21:"read_intel_endian_int";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"buffer";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The binary chunk";s:11:"phpdoc_name";s:6:"buffer";}}s:4:"name";s:21:"read_intel_endian_int";s:11:"description";s:81:"Read an integer from the given binary chunk. The integer is in intel endian form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:11:"The integer";}}s:23:"read_network_endian_int";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"buffer";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The binary chunk";s:11:"phpdoc_name";s:6:"buffer";}}s:4:"name";s:23:"read_network_endian_int";s:11:"description";s:83:"Read an integer from the given binary chunk. The integer is in network endian form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:11:"The integer";}}s:16:"_get_wmv_details";a:6:{s:8:"filename";s:22:"sources/galleries2.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:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:16:"_get_wmv_details";s:11:"description";s:45:"Get width,height,length of a .wmv video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"The triplet (possibly containing nulls for when we can't detect properties)";}}s:30:"_get_wmv_details_do_chunk_list";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}i:1;a:7:{s:4:"name";s:12:"chunk_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:61:"The length of the current chunk list (null: covers full file)";s:11:"phpdoc_name";s:12:"chunk_length";}}s:4:"name";s:30:"_get_wmv_details_do_chunk_list";s:11:"description";s:78:"Get chunk-bytes-read,width,height,length of a chunk list of a .wmv video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:89:"The quartet (possibly containing nulls for when we can't detect properties) (null: error)";}}s:16:"_get_avi_details";a:6:{s:8:"filename";s:22:"sources/galleries2.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:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:16:"_get_avi_details";s:11:"description";s:45:"Get width,height,length of a .avi video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"The triplet (possibly containing nulls for when we can't detect properties)";}}s:16:"_get_ram_details";a:6:{s:8:"filename";s:22:"sources/galleries2.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:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:16:"_get_ram_details";s:11:"description";s:49:"Get width,height,length of a .rm/.ram video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:89:"The triplet (possibly containing nulls for when we can't detect properties) (null: error)";}}s:16:"_get_mov_details";a:6:{s:8:"filename";s:22:"sources/galleries2.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:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:16:"_get_mov_details";s:11:"description";s:49:"Get width,height,length of a .mov/.qt video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:89:"The triplet (possibly containing nulls for when we can't detect properties) (null: error)";}}s:29:"_get_mov_details_do_atom_list";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}i:1;a:7:{s:4:"name";s:9:"atom_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:60:"The length of the current atom list (null: covers full file)";s:11:"phpdoc_name";s:9:"atom_size";}}s:4:"name";s:29:"_get_mov_details_do_atom_list";s:11:"description";s:81:"Get chunk-bytes-read,width,height,length of a atom list of a .mov/.qt video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"The quartet (possibly containing nulls for when we can't detect properties)";}}s:9:"add_image";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:11:"Image title";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:2;a:5:{s:4:"name";s:11:"description";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:3;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the actual image";s:11:"phpdoc_name";s:3:"url";}i:4;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the thumbnail of the actual image";s:11:"phpdoc_name";s:9:"thumb_url";}i:5;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether the image has been validated for display on the site";s:11:"phpdoc_name";s:9:"validated";}i:6;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the image may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:7;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the image may be commented upon";s:11:"phpdoc_name";s:14:"allow_comments";}i:8;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the image may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:9;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"Hidden notes associated with the image";s:11:"phpdoc_name";s:5:"notes";}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:36:"The submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:11;a:7:{s:4:"name";s:8:"add_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:30:"The time of adding (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:12;a:7:{s:4:"name";s:9:"edit_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:33:"The time of editing (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:13;a:7:{s:4:"name";s:5:"views";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:"The number of views";s:11:"phpdoc_name";s:5:"views";}i:14;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:15;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:16;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:17;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:9:"add_image";s:11:"description";s:36:"Add an image to a specified gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:23:"The ID of the new entry";}}s:10:"edit_image";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:19:{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:27:"The ID of the image to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:11:"Image title";s:11:"phpdoc_name";s:5:"title";}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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:3;a:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the actual image";s:11:"phpdoc_name";s:3:"url";}i:5;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the thumbnail of the actual image";s:11:"phpdoc_name";s:9:"thumb_url";}i:6;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether the image has been validated for display on the site";s:11:"phpdoc_name";s:9:"validated";}i:7;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the image may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:8;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the image may be commented upon";s:11:"phpdoc_name";s:14:"allow_comments";}i:9;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the image may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:10;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"Hidden notes associated with the image";s:11:"phpdoc_name";s:5:"notes";}i:11;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:12;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:13;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:14;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:15;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:16;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:17;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:18;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:10:"edit_image";s:11:"description";s:37:"Edit an image in a specified gallery.";s:5:"flags";a:0:{}}s:12:"delete_image";a:5:{s:8:"filename";s:22:"sources/galleries2.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:"The ID of the image";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"delete_full";s:7:"default";s:12:"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 delete the actual file also";s:11:"phpdoc_name";s:11:"delete_full";}}s:4:"name";s:12:"delete_image";s:11:"description";s:76:"Delete a specified image from the database, and delete the file if possible.";s:5:"flags";a:0:{}}s:18:"create_video_thumb";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:42:"Video to get thumbail from (must be local)";s:11:"phpdoc_name";s:7:"src_url";}i:1;a:7:{s:4:"name";s:20:"expected_output_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:45:"Where to save to (null: decide for ourselves)";s:11:"phpdoc_name";s:20:"expected_output_path";}}s:4:"name";s:18:"create_video_thumb";s:11:"description";s:25:"Create a video thumbnail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:92:"Thumbnail, only valid if expected_output_path was passed as null (blank: could not generate)";}}s:9:"add_video";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:21:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:11:"Video title";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:2;a:5:{s:4:"name";s:11:"description";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:3;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the actual video";s:11:"phpdoc_name";s:3:"url";}i:4;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the thumbnail of the actual video";s:11:"phpdoc_name";s:9:"thumb_url";}i:5;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether the video has been validated for display on the site";s:11:"phpdoc_name";s:9:"validated";}i:6;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the video may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:7;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the video may be commented upon";s:11:"phpdoc_name";s:14:"allow_comments";}i:8;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the video may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:9;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"Hidden notes associated with the video";s:11:"phpdoc_name";s:5:"notes";}i:10;a:5:{s:4:"name";s:12:"video_length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The length of the video";s:11:"phpdoc_name";s:12:"video_length";}i:11;a:5:{s:4:"name";s:11:"video_width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"The width of the video";s:11:"phpdoc_name";s:11:"video_width";}i:12;a:5:{s:4:"name";s:12:"video_height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The height of the video";s:11:"phpdoc_name";s:12:"video_height";}i:13;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:36:"The submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:14;a:7:{s:4:"name";s:8:"add_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:30:"The time of adding (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:15;a:7:{s:4:"name";s:9:"edit_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:33:"The time of editing (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:16;a:7:{s:4:"name";s:5:"views";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:"The number of views";s:11:"phpdoc_name";s:5:"views";}i:17;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:18;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:19;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:20;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:9:"add_video";s:11:"description";s:35:"Add a video to a specified gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:23:"The ID of the new entry";}}s:10:"edit_video";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:22:{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:27:"The ID of the entry to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:11:"Video title";s:11:"phpdoc_name";s:5:"title";}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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:3;a:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the actual video";s:11:"phpdoc_name";s:3:"url";}i:5;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the thumbnail of the actual video";s:11:"phpdoc_name";s:9:"thumb_url";}i:6;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether the video has been validated for display on the site";s:11:"phpdoc_name";s:9:"validated";}i:7;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the video may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:8;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the video may be commented upon";s:11:"phpdoc_name";s:14:"allow_comments";}i:9;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the video may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:10;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"Hidden notes associated with the video";s:11:"phpdoc_name";s:5:"notes";}i:11;a:5:{s:4:"name";s:12:"video_length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The length of the video";s:11:"phpdoc_name";s:12:"video_length";}i:12;a:5:{s:4:"name";s:11:"video_width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"The width of the video";s:11:"phpdoc_name";s:11:"video_width";}i:13;a:5:{s:4:"name";s:12:"video_height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The height of the video";s:11:"phpdoc_name";s:12:"video_height";}i:14;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:15;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:16;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:17;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:18;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:19;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:20;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:21;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:10:"edit_video";s:11:"description";s:36:"Edit a video in a specified gallery.";s:5:"flags";a:0:{}}s:12:"delete_video";a:5:{s:8:"filename";s:22:"sources/galleries2.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:29:"The ID of the entry to delete";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"delete_full";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:70:"Whether to delete the actual video file from disk as well as the entry";s:11:"phpdoc_name";s:11:"delete_full";}}s:4:"name";s:12:"delete_video";s:11:"description";s:38:"Delete a video in a specified gallery.";s:5:"flags";a:0:{}}s:23:"watermark_gallery_image";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"gallery";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The name of the gallery for the image";s:11:"phpdoc_name";s:7:"gallery";}i:1;a:5:{s:4:"name";s:9:"file_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:26:"The path to the image file";s:11:"phpdoc_name";s:9:"file_path";}i:2;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"The original file name of the image";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:23:"watermark_gallery_image";s:11:"description";s:60:"Watermarks an image with the appropriate gallery watermarks.";s:5:"flags";a:0:{}}s:17:"_watermark_corner";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:36:"The image resource being watermarked";s:11:"phpdoc_name";s:6:"source";}i:1;a:5:{s:4:"name";s:13:"watermark_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:37:"The (local) URL to the watermark file";s:11:"phpdoc_name";s:13:"watermark_url";}i:2;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:53:"Whether a right hand side corner is being watermarked";s:11:"phpdoc_name";s:1:"x";}i:3;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:49:"Whether a bottom edge corner is being watermarked";s:11:"phpdoc_name";s:1:"y";}}s:4:"name";s:17:"_watermark_corner";s:11:"description";s:33:"Watermark the corner of an image.";s:5:"flags";a:0:{}}s:35:"constrain_gallery_image_to_max_size";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"file_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:26:"The path to the image file";s:11:"phpdoc_name";s:9:"file_path";}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:34:"The original filename of the image";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:9:"box_width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"The box width";s:11:"phpdoc_name";s:9:"box_width";}}s:4:"name";s:35:"constrain_gallery_image_to_max_size";s:11:"description";s:75:"Make sure the detailed image file is not bigger than the defined box width.";s:5:"flags";a:0:{}}s:11:"add_gallery";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:22:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The gallery codename";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"fullname";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:5:"notes";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:5:{s:4:"name";s:9:"parent_id";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";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 images may be put in this gallery";s:11:"phpdoc_name";s:13:"accept_images";}i:6;a:7:{s:4:"name";s:13:"accept_videos";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 videos may be put in this gallery";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";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 the gallery uses the flow mode interface";s:11:"phpdoc_name";s:19:"flow_mode_interface";}i:9;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:53:"The representative image of the gallery (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:10;a:7:{s:4:"name";s:18:"watermark_top_left";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:23:"Watermark (blank: 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";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"Watermark (blank: 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";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"Watermark (blank: 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";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:22:"watermark_bottom_right";}i:14;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:6:"BINARY";s:11:"description";s:26:"Whether rating are allowed";s:11:"phpdoc_name";s:12:"allow_rating";}i:15;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:6:"BINARY";s:11:"description";s:28:"Whether comments are allowed";s:11:"phpdoc_name";s:14:"allow_comments";}i:16;a:7:{s:4:"name";s:17:"skip_exists_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:79:"Whether to skip the check for whether the gallery exists (useful for importers)";s:11:"phpdoc_name";s:17:"skip_exists_check";}i:17;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:18;a:7:{s:4:"name";s:7:"g_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:32:"The gallery owner (null: nobody)";s:11:"phpdoc_name";s:7:"g_owner";}i:19;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:20;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:21;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:11:"add_gallery";s:11:"description";s:44:"Add a gallery with the specified parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:12:"edit_gallery";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:23:{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:50:"The old gallery codename (in case we are renaming)";s:11:"phpdoc_name";s:8:"old_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:52:"The gallery codename (maybe the same as the old one)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"fullname";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:3;a:5:{s:4:"name";s:11:"description";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:4;a:5:{s:4:"name";s:5:"notes";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:5;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:8:"?ID_TEXT";s:11:"description";s:36:"The parent gallery (null: no parent)";s:11:"phpdoc_name";s:9:"parent_id";}i:6;a:7:{s:4:"name";s:13:"accept_images";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 images may be put in this gallery";s:11:"phpdoc_name";s:13:"accept_images";}i:7;a:7:{s:4:"name";s:13:"accept_videos";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 videos may be put in this gallery";s:11:"phpdoc_name";s:13:"accept_videos";}i:8;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:9;a:7:{s:4:"name";s:19:"flow_mode_interface";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 the gallery uses the flow mode interface";s:11:"phpdoc_name";s:19:"flow_mode_interface";}i:10;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:53:"The representative image of the gallery (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:11;a:7:{s:4:"name";s:18:"watermark_top_left";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:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:18:"watermark_top_left";}i:12;a:7:{s:4:"name";s:19:"watermark_top_right";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:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:19:"watermark_top_right";}i:13;a:7:{s:4:"name";s:21:"watermark_bottom_left";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:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:21:"watermark_bottom_left";}i:14;a:7:{s:4:"name";s:22:"watermark_bottom_right";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:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:22:"watermark_bottom_right";}i:15;a:7:{s:4:"name";s:13:"meta_keywords";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:51:"Meta keywords for this resource (null: do not edit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:16;a:7:{s:4:"name";s:16:"meta_description";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:54:"Meta description for this resource (null: do not edit)";s:11:"phpdoc_name";s:16:"meta_description";}i:17;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:6:"BINARY";s:11:"description";s:26:"Whether rating are allowed";s:11:"phpdoc_name";s:12:"allow_rating";}i:18;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:6:"BINARY";s:11:"description";s:28:"Whether comments are allowed";s:11:"phpdoc_name";s:14:"allow_comments";}i:19;a:7:{s:4:"name";s:7:"g_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:32:"The gallery owner (null: nobody)";s:11:"phpdoc_name";s:7:"g_owner";}i:20;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:21;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}i:22;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:12:"edit_gallery";s:11:"description";s:15:"Edit a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:14:"delete_gallery";a:5:{s:8:"filename";s:22:"sources/galleries2.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:7:"ID_TEXT";s:11:"description";s:20:"The gallery codename";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:14:"delete_gallery";s:11:"description";s:27:"Delete a specified gallery.";s:5:"flags";a:0:{}}s:29:"make_member_gallery_if_needed";a:5:{s:8:"filename";s:22:"sources/galleries2.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:20:"The gallery codename";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:29:"make_member_gallery_if_needed";s:11:"description";s:213:"The UI shows member galleries that do not exist. If it is a member gallery, and it does not exist, it'll need making, before something can be added. This gallery performs the check and makes the gallery if needed.";s:5:"flags";a:0:{}}s:27:"get_potential_gallery_title";a:6:{s:8:"filename";s:22:"sources/galleries2.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:20:"The gallery codename";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:27:"get_potential_gallery_title";s:11:"description";s:67:"Get the potential title of a gallery - real name if gallery exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:66:"The gallery title (null: does not exist and won't be auto-created)";}}s:23:"download_gallery_script";a:5:{s:8:"filename";s:22:"sources/galleries3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"download_gallery_script";s:11:"description";s:73:"Script handler for downloading a gallery, as specified by GET parameters.";s:5:"flags";a:0:{}}s:12:"require_code";a:5:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:149:"The codename for the source module to load (or a full relative path, ending with .php; if custom checking is needed, this must be the custom version)";s:11:"phpdoc_name";s:8:"codename";}i:1;a:7:{s:4:"name";s:10:"light_exit";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to cleanly fail when a source file is missing";s:11:"phpdoc_name";s:10:"light_exit";}}s:4:"name";s:12:"require_code";s:11:"description";s:335:"This function is a very important one when coding. It allows you to include a source code file (from root/sources/ or root/sources_custom/) through the proper channels.You should remember this function, and not substitute anything else for it, as that will likely make your code unstable.It is key to source code modularity in Composr.";s:5:"flags";a:0:{}}s:24:"require_code_no_override";a:5:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:42:"The codename for the source module to load";s:11:"phpdoc_name";s:8:"codename";}}s:4:"name";s:24:"require_code_no_override";s:11:"description";s:62:"Require code, but without looking for sources_custom overrides";s:5:"flags";a:0:{}}s:17:"appengine_is_live";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"appengine_is_live";s:11:"description";s:63:"Find if we are running on a live Google App Engine application.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:56:"If it is running as a live Google App Engine application";}}s:11:"tacit_https";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"tacit_https";s:11:"description";s:31:"Are we currently running HTTPS.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:9:"If we are";}}s:14:"object_factory";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"class";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The class name";s:11:"phpdoc_name";s:5:"class";}i:1;a:7:{s:4:"name";s:10:"failure_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:48:"Whether to return null if there is no such class";s:11:"phpdoc_name";s:10:"failure_ok";}}s:4:"name";s:14:"object_factory";s:11:"description";s:33:"Make an object of the given class";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:32:"The object (null: no such class)";}}s:20:"php_function_allowed";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Function name.";s:11:"phpdoc_name";s:8:"function";}}s:4:"name";s:20:"php_function_allowed";s:11:"description";s:223:"Find whether a particular PHP function is blocked.Note that you still need to put "@" before set_time_limit, as some web host(s) have their own non-detectable block:"Cannot set max execution time limit due to system policy"";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:12:"safe_ini_set";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Config option.";s:11:"phpdoc_name";s:3:"var";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"New value of option.";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:12:"safe_ini_set";s:11:"description";s:75:"Sets the value of a configuration option, if the PHP environment allows it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:35:"Old value of option (false: error).";}}s:13:"get_file_base";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_base";s:11:"description";s:50:"Get the file base for your installation of Composr";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:39:"The file base, without a trailing slash";}}s:20:"get_custom_file_base";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_custom_file_base";s:11:"description";s:128:"Get the file base for your installation of Composr. For a shared install, or a GAE-install, this is different to the file-base.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:39:"The file base, without a trailing slash";}}s:14:"filter_naughty";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{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:14:"String to test";s:11:"phpdoc_name";s:2:"in";}i:1;a:7:{s:4:"name";s:4:"preg";s:7:"default";s:13:"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 just filter out the naughtyness";s:11:"phpdoc_name";s:4:"preg";}}s:4:"name";s:14:"filter_naughty";s:11:"description";s:395:"Get the parameter put into it, with no changes. If it detects that the parameter is naughty (i.e malicious, and probably from a hacker), it will log the hack-attack and output an error message.This function is designed to be called on parameters that will be embedded in a path, and defines malicious as trying to reach a parent directory using '..'. All file paths in Composr should be absolute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Same as input string";}}s:20:"filter_naughty_harsh";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{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:14:"String to test";s:11:"phpdoc_name";s:2:"in";}i:1;a:7:{s:4:"name";s:4:"preg";s:7:"default";s:13:"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 just filter out the naughtyness";s:11:"phpdoc_name";s:4:"preg";}}s:4:"name";s:20:"filter_naughty_harsh";s:11:"description";s:167:"This function is similar to filter_naughty, except it requires the parameter to be strictly alphanumeric. It is intended for use on text that will be put into an eval.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Same as input string";}}s:12:"hhvm_include";a:6:{s:8:"filename";s:18:"sources/global.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:12:"Include path";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:12:"hhvm_include";s:11:"description";s:100:"Include some PHP code, compiling to HHVM's hack, for type strictness (uses Composr phpdoc comments).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:36:"Code return code (null: actual null)";}}s:13:"init__global2";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__global2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"fixup_bad_php_env_vars";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"fixup_bad_php_env_vars";s:11:"description";s:231:"PHP's environment can be a real mess across servers. Cleanup the best we can.See phpstub.php for info on what environmental data we can rely on.See Chris's own comments on http://php.net/manual/en/reserved.variables.server.php also";s:5:"flags";a:0:{}}s:17:"monitor_slow_urls";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"monitor_slow_urls";s:11:"description";s:53:"Use with register_shutdown_function to log slow URLs.";s:5:"flags";a:0:{}}s:15:"memory_tracking";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"memory_tracking";s:11:"description";s:27:"Log excessive memory usage.";s:5:"flags";a:0:{}}s:31:"prepare_for_known_ajax_response";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"prepare_for_known_ajax_response";s:11:"description";s:42:"Get ready for outputting an AJAX response.";s:5:"flags";a:0:{}}s:26:"memory_limit_for_max_param";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"max_param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The max parameter name";s:11:"phpdoc_name";s:9:"max_param";}}s:4:"name";s:26:"memory_limit_for_max_param";s:11:"description";s:69:"Raise the PHP memory limit to cater for a requested large result set.";s:5:"flags";a:0:{}}s:24:"disable_php_memory_limit";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"disable_php_memory_limit";s:11:"description";s:150:"Disable the PHP memory limit. Do not use this carelessly, use it if a screen is a bit fat or in an importer, don't use it assuming memory is infinite.";s:5:"flags";a:0:{}}s:11:"get_charset";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_charset";s:11:"description";s:101:"Get the character set to use. We try and be clever to allow AJAX scripts to avoid loading up language";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The character set";}}s:15:"load_user_stuff";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"load_user_stuff";s:11:"description";s:41:"Load stuff that allows user code to work.";s:5:"flags";a:0:{}}s:18:"catch_fatal_errors";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"catch_fatal_errors";s:11:"description";s:124:"Composr error catcher for fatal versions. This is hooked in only on PHP5.2 as error_get_last() only works on these versions.";s:5:"flags";a:0:{}}s:21:"composr_error_handler";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"errno";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The error type-number";s:11:"phpdoc_name";s:5:"errno";}i:1;a:5:{s:4:"name";s:6:"errstr";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:17:"The error message";s:11:"phpdoc_name";s:6:"errstr";}i:2;a:5:{s:4:"name";s:7:"errfile";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The file the error occurred in";s:11:"phpdoc_name";s:7:"errfile";}i:3;a:5:{s:4:"name";s:7:"errline";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The line the error occurred on";s:11:"phpdoc_name";s:7:"errline";}}s:4:"name";s:21:"composr_error_handler";s:11:"description";s:53:"Composr error handler (hooked into PHP error system).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:241:"Mark error handled, so PHP's native error handling code does not execute. i.e. false => bubble, true => handled. For errors we intercept we don't return at all so bubbling never happens in such a case. $php_errormsg is only set if we bubble.";}}s:20:"is_browser_decaching";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_browser_decaching";s:11:"description";s:79:"Find whether the browser session is set to be doing a hard cache-empty refresh.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether the browser session is set to be doing a hard cache-empty refresh";}}s:14:"current_script";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"current_script";s:11:"description";s:32:"Find out what script is running.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The script running (usually 'index')";}}s:14:"running_script";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"is_this_running";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:62:"Script filename (canonically we want NO .php file type suffix)";s:11:"phpdoc_name";s:15:"is_this_running";}}s:4:"name";s:14:"running_script";s:11:"description";s:55:"Find whether a certain script is being run to get here.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the script is running";}}s:11:"inform_exit";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:73:"Whether match key messages / redirects should be supported (null: detect)";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:11:"inform_exit";s:11:"description";s:92:"This is a intended to output an informational exit at the same time as terminating execution";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:9:"warn_exit";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether match key messages / redirects should be supported";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:9:"warn_exit";s:11:"description";s:108:"This is a less-revealing alternative to fatal_exit, that is used for user-errors/common-corruption-scenarios";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:10:"fatal_exit";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:10:"fatal_exit";s:11:"description";s:158:"Do a fatal exit, echo the header (if possible) and an error message, followed by a debugging back-trace.It also adds an entry to the error log, for reference.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:24:"log_hack_attack_and_exit";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:67:"The reason for the hack attack. This has to be a language string ID";s:11:"phpdoc_name";s:6:"reason";}i:1;a:7:{s:4:"name";s:14:"reason_param_a";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:97:"A parameter for the hack attack language string (this should be based on a unique ID, preferably)";s:11:"phpdoc_name";s:14:"reason_param_a";}i:2;a:7:{s:4:"name";s:14:"reason_param_b";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:67:"A more illustrative parameter, which may be anything (e.g. a title)";s:11:"phpdoc_name";s:14:"reason_param_b";}i:3;a:7:{s:4:"name";s:6:"silent";s:7:"default";s:13:"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 silently log the hack rather than also exiting";s:11:"phpdoc_name";s:6:"silent";}i:4;a:7:{s:4:"name";s:11:"instant_ban";s:7:"default";s:13:"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 a ban should be immediate";s:11:"phpdoc_name";s:11:"instant_ban";}}s:4:"name";s:24:"log_hack_attack_and_exit";s:11:"description";s:130:"Log a hackattack, then displays an error message. It also attempts to send an e-mail to the staff alerting them of the hackattack.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:11:"cms_version";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"cms_version";s:11:"description";s:43:"Get the major version of your installation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:45:"The major version number of your installation";}}s:18:"cms_version_pretty";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"cms_version_pretty";s:11:"description";s:174:"Get the full string version of Composr that you are running, in 'pretty' format.This is (and must be kept) equivalent to get_version_pretty__from_dotted(get_version_dotted())";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:49:"The string saying the full Composr version number";}}s:10:"get_domain";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_domain";s:11:"description";s:132:"Get the domain the website is installed on (preferably, without any www). The domain is used for e-mail defaults among other things.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:25:"The domain of the website";}}s:14:"get_forum_type";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_forum_type";s:11:"description";s:33:"Get the type of forums installed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:27:"The type of forum installed";}}s:18:"get_forum_base_url";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"forum_base";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:244:"Whether to get the base directory of the forum. Unless running Conversr, this makes no difference - if possibly running Conversr, you need to think about this parameter: are you trying to reach the MSN-central-site or just a link to the forums?";s:11:"phpdoc_name";s:10:"forum_base";}}s:4:"name";s:18:"get_forum_base_url";s:11:"description";s:33:"Get the installed forum base URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:28:"The installed forum base URL";}}s:15:"get_cookie_path";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_cookie_path";s:11:"description";s:28:"Get the Composr cookie path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:55:"The Composr cookie path (null: no special path, global)";}}s:17:"get_cookie_domain";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_cookie_domain";s:11:"description";s:30:"Get the Composr cookie domain.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:48:"The Composr cookie domain (null: current domain)";}}s:15:"get_cookie_days";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_cookie_days";s:11:"description";s:44:"Get the number of days to store our cookies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:39:"The number of days to store our cookies";}}s:13:"get_site_name";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_site_name";s:11:"description";s:18:"Get the site name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The name of the site";}}s:12:"in_safe_mode";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"in_safe_mode";s:11:"description";s:41:"Find whether we are running in safe mode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether we are in safe mode";}}s:7:"cms_srv";a:6:{s:8:"filename";s:19:"sources/global2.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:6:"string";s:11:"description";s:17:"The variable name";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:7:"cms_srv";s:11:"description";s:33:"Get server environment variables.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:37:"The variable value ('' means unknown)";}}s:11:"find_script";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:3:{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:33:"The codename of the needed script";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:11:"append_keep";s:7:"default";s:13:"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 append keep variables";s:11:"phpdoc_name";s:11:"append_keep";}i:2;a:8:{s:4:"name";s:13:"base_url_code";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:70:"Code representing what base URL type to use (0=guess, 1=http, 2=https)";s:11:"phpdoc_name";s:13:"base_url_code";s:3:"set";s:5:"0 1 2";}}s:4:"name";s:11:"find_script";s:11:"description";s:279:"Find the URL to a certain entry point script, located in the root directory, top level of a zone directory, data directory, or data_custom directory.Why this function? Because Composr allows these to be moved around between zone directories, to suit site .htaccess requirements).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL to the script";}}s:12:"get_base_url";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:5:"https";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:96:"Whether to get the HTTPS base URL (null: do so only if the current page uses the HTTPS base URL)";s:11:"phpdoc_name";s:5:"https";}i:1;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:42:"The zone the link is for (null: root zone)";s:11:"phpdoc_name";s:8:"zone_for";}}s:4:"name";s:12:"get_base_url";s:11:"description";s:71:"Get the base URL (the minimum fully qualified URL to our installation).";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:19:"get_custom_base_url";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"https";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:96:"Whether to get the HTTPS base URL (null: do so only if the current page uses the HTTPS base URL)";s:11:"phpdoc_name";s:5:"https";}}s:4:"name";s:19:"get_custom_base_url";s:11:"description";s:160:"Get the base URL (the minimum fully qualified URL to our personal data installation). For a shared install, or a GAE-install, this is different to the base-url.";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:20:"get_complex_base_url";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:31:"Short base URL we need to probe";s:11:"phpdoc_name";s:2:"at";}}s:4:"name";s:20:"get_complex_base_url";s:11:"description";s:216:"Function to get a base URL for an Conversr relative-URL. The situation is complex as it needs to take into account Conversr multi-site-network's, locally defined theme images, and shared-installs (Demonstratr style).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:24:"The appropriate base-url";}}s:19:"either_param_string";a:6:{s:8:"filename";s:19:"sources/global2.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:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:150:"The default value to give the parameter if the parameter value is not defined (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:19:"either_param_string";s:11:"description";s:295:"Get a parameter value (either POST *or* GET, i.e. like $_REQUEST[$name]), or the default if neither can be found.Implements additional security over the direct PHP access mechanism which should not be used.Use with caution, as this has very limited CSRF protection compared to post_param_string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The parameter value (null: missing)";}}s:17:"post_param_string";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:150:"The default value to give the parameter if the parameter value is not defined (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}i:2;a:7:{s:4:"name";s:4:"html";s:7:"default";s:13:"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 we are cleaning for HTML rather than Comcode/plain-text";s:11:"phpdoc_name";s:4:"html";}i:3;a:7:{s:4:"name";s:17:"conv_from_wysiwyg";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:60:"Whether to convert WYSIWYG contents to Comcode automatically";s:11:"phpdoc_name";s:17:"conv_from_wysiwyg";}}s:4:"name";s:17:"post_param_string";s:11:"description";s:207:"Get the value of the specified POST parameter (i.e. like $_POST[$name]) if it is passed, or the default otherwise.Implements additional security over the direct PHP access mechanism which should not be used.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The parameter value (null: missing)";}}s:16:"get_param_string";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:150:"The default value to give the parameter if the parameter value is not defined (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}i:2;a:7:{s:4:"name";s:11:"no_security";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether to skip the security check. Does not currently do anything";s:11:"phpdoc_name";s:11:"no_security";}}s:4:"name";s:16:"get_param_string";s:11:"description";s:205:"Get the value of the specified GET parameter (i.e. like $_GET[$name]) if it is passed, or the default otherwise.Implements additional security over the direct PHP access mechanism which should not be used.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The parameter value (null: missing)";}}s:7:"__param";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:5:{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:42:"The array we're extracting parameters from";s:11:"phpdoc_name";s:5:"array";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:150:"The default value to give the parameter if the parameter value is not defined (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:7:"integer";s:7:"default";s:13:"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 parameter has to be an integer";s:11:"phpdoc_name";s:7:"integer";}i:4;a:7:{s:4:"name";s:6:"posted";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:62:"Whether the parameter is a POST parameter (null: undetermined)";s:11:"phpdoc_name";s:6:"posted";}}s:4:"name";s:7:"__param";s:11:"description";s:48:"Helper function to load up a GET/POST parameter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"The value of the parameter";}}s:24:"simulated_wildcard_match";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"context";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The haystack";s:11:"phpdoc_name";s:7:"context";}i:1;a:5:{s:4:"name";s:4:"word";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:34:"The needle (a wildcard expression)";s:11:"phpdoc_name";s:4:"word";}i:2;a:7:{s:4:"name";s:10:"full_cover";s:7:"default";s:13:"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 full-coverance is required";s:11:"phpdoc_name";s:10:"full_cover";}}s:4:"name";s:24:"simulated_wildcard_match";s:11:"description";s:58:"Do a wildcard match by converting to a regular expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether we have a match";}}s:20:"either_param_integer";a:6:{s:8:"filename";s:19:"sources/global2.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:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:170:"The default value to give the parameter if the parameter value is not defined or the empty string (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:20:"either_param_integer";s:11:"description";s:309:"This function is the integeric partner of either_param_string, as it returns the value as an integer.You should always use integer specified versions when inputting integers, for the added security that type validation allows. If the value is of the wrong type, it indicates a hack attempt and will be logged.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:62:"The parameter value (null: not set, and null given as default)";}}s:18:"post_param_integer";a:6:{s:8:"filename";s:19:"sources/global2.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:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:170:"The default value to give the parameter if the parameter value is not defined or the empty string (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:18:"post_param_integer";s:11:"description";s:99:"This function is the integeric partner of post_param_string, as it returns the value as an integer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:62:"The parameter value (null: not set, and null given as default)";}}s:17:"get_param_integer";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:170:"The default value to give the parameter if the parameter value is not defined or the empty string (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}i:2;a:7:{s:4:"name";s:13:"not_string_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:183:"If a string is given, use the default parameter rather than giving an error (only use this if you are suffering from a parameter conflict situation between different parts of Composr)";s:11:"phpdoc_name";s:13:"not_string_ok";}}s:4:"name";s:17:"get_param_integer";s:11:"description";s:98:"This function is the integeric partner of get_param_string, as it returns the value as an integer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:62:"The parameter value (null: not set, and null given as default)";}}s:19:"unixify_line_format";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:4:{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:17:"The data to clean";s:11:"phpdoc_name";s:2:"in";}i:1;a:7:{s:4:"name";s:15:"desired_charset";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:182:"The character set it should be in. We don't do any real conversions using this, only make sure that common problems with fed ISO-8859-1 data are resolved (null: output character set)";s:11:"phpdoc_name";s:15:"desired_charset";}i:2;a:7:{s:4:"name";s:4:"html";s:7:"default";s:13:"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 we are cleaning for HTML rather than Comcode/plain-text";s:11:"phpdoc_name";s:4:"html";}i:3;a:7:{s:4:"name";s:9:"from_disk";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the file is loaded from disk (less conversion needed)";s:11:"phpdoc_name";s:9:"from_disk";}}s:4:"name";s:19:"unixify_line_format";s:11:"description";s:510:"Make sure that lines are seperated by "\n", with no "\r"'s there at all. For Mac data, this will be a flip scenario. For Linux data this will be a null operation. For windows data this will be change from "\r\n" to just "\n". For a realistic scenario, data could have originated on all kinds of platforms, with some editors converting, some situations being inter-platform, and general confusion. Don't make blind assumptions - use this function to clean data, then write clean code that only considers "\n"'s.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The cleaned data";}}s:9:"sync_file";a:5:{s:8:"filename";s:19:"sources/global2.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:42:"File/directory name to sync on (full path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:9:"sync_file";s:11:"description";s:127:"Provides an override point for file synchronisation between mirrored servers. Called after any file creation, deletion or edit.";s:5:"flags";a:0:{}}s:14:"sync_file_move";a:5:{s:8:"filename";s:19:"sources/global2.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:4:"PATH";s:11:"description";s:63:"File/directory name to move from (may be full or relative path)";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:4:"PATH";s:11:"description";s:61:"File/directory name to move to (may be full or relative path)";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:14:"sync_file_move";s:11:"description";s:122:"Provides an override point for file-move synchronisation between mirrored servers. Called after any rename or move action.";s:5:"flags";a:0:{}}s:22:"convert_data_encodings";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"known_utf8";s:7:"default";s:13:"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 we know we are working in utf-8. This is the case for AJAX calls.";s:11:"phpdoc_name";s:10:"known_utf8";}}s:4:"name";s:22:"convert_data_encodings";s:11:"description";s:211:"Performs lots of magic to make sure data encodings are converted correctly. Input, and output too (as often stores internally in UTF or performs automatic dynamic conversions from internal to external charsets).";s:5:"flags";a:0:{}}s:13:"init__global3";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__global3";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"get_file_extension";a:6:{s:8:"filename";s:19:"sources/global3.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:12:"The filename";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:18:"get_file_extension";s:11:"description";s:71:"Get the file extension of the specified file. It returns without a dot.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The filename extension (no dot)";}}s:14:"is_suexec_like";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"is_suexec_like";s:11:"description";s:101:"Find whether we can get away with natural file access, not messing with AFMs, world-writability, etc.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:20:"Whether we have this";}}s:15:"fix_permissions";a:5:{s:8:"filename";s:19:"sources/global3.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:39:"The full pathname to the file/directory";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:5:"perms";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:185:"The permissions to make (not the permissions are reduced if the function finds that the file is owned by the web user [doesn't need world permissions then]) (null: default for file/dir)";s:11:"phpdoc_name";s:5:"perms";}}s:4:"name";s:15:"fix_permissions";s:11:"description";s:253:"Ensure that the specified file/folder is writeable for the FTP user (so that it can be deleted by the system), and should be called whenever a file is uploaded/created, or a folder is made. We call this function assuming we are giving world permissions.";s:5:"flags";a:0:{}}s:26:"cms_file_get_contents_safe";a:6:{s:8:"filename";s:19:"sources/global3.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:10:"File path.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:26:"cms_file_get_contents_safe";s:11:"description";s:49:"Get the contents of a file, with locking support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"File contents.";}}s:18:"http_download_file";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:19:{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 download";s:11:"phpdoc_name";s:3:"url";}i:1;a:8:{s:4:"name";s:10:"byte_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:91:"The number of bytes to download. This is not a guarantee, it is a minimum (null: all bytes)";s:11:"phpdoc_name";s:10:"byte_limit";s:5:"range";s:5:"1 max";}i:2;a:7:{s:4:"name";s:13:"trigger_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to throw a Composr error, on error";s:11:"phpdoc_name";s:13:"trigger_error";}i:3;a:7:{s:4:"name";s:11:"no_redirect";s:7:"default";s:13:"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 block redirects (returns null when found)";s:11:"phpdoc_name";s:11:"no_redirect";}i:4;a:7:{s:4:"name";s:2:"ua";s:7:"default";s:7:"Composr";s:11:"default_raw";s:9:"'Composr'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:29:"The user-agent to identify as";s:11:"phpdoc_name";s:2:"ua";}i:5;a:7:{s:4:"name";s:11:"post_params";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:97:"An optional array of POST parameters to send; if this is null, a GET request is used (null: none)";s:11:"phpdoc_name";s:11:"post_params";}i:6;a:7:{s:4:"name";s:7:"cookies";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:49:"An optional array of cookies to send (null: none)";s:11:"phpdoc_name";s:7:"cookies";}i:7;a:7:{s:4:"name";s:6:"accept";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:44:"'accept' header value (null: don't pass one)";s:11:"phpdoc_name";s:6:"accept";}i:8;a:7:{s:4:"name";s:14:"accept_charset";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:52:"'accept-charset' header value (null: don't pass one)";s:11:"phpdoc_name";s:14:"accept_charset";}i:9;a:7:{s:4:"name";s:15:"accept_language";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:53:"'accept-language' header value (null: don't pass one)";s:11:"phpdoc_name";s:15:"accept_language";}i:10;a:7:{s:4:"name";s:13:"write_to_file";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:46:"File handle to write to (null: do not do that)";s:11:"phpdoc_name";s:13:"write_to_file";}i:11;a:7:{s:4:"name";s:7:"referer";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:29:"The HTTP referer (null: none)";s:11:"phpdoc_name";s:7:"referer";}i:12;a:7:{s:4:"name";s:4:"auth";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:"A pair: authentication username and password (null: none)";s:11:"phpdoc_name";s:4:"auth";}i:13;a:7:{s:4:"name";s:7:"timeout";s:7:"default";d:6;s:11:"default_raw";s:3:"6.0";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:11:"The timeout";s:11:"phpdoc_name";s:7:"timeout";}i:14;a:7:{s:4:"name";s:8:"raw_post";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether to treat the POST parameters as a raw POST (rather than using MIME)";s:11:"phpdoc_name";s:8:"raw_post";}i:15;a:7:{s:4:"name";s:5:"files";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:58:"Files to send. Map between field to file path (null: none)";s:11:"phpdoc_name";s:5:"files";}i:16;a:7:{s:4:"name";s:13:"extra_headers";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:"Extra headers to send (null: none)";s:11:"phpdoc_name";s:13:"extra_headers";}i:17;a:7:{s:4:"name";s:9:"http_verb";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:55:"HTTP verb (null: auto-decide based on other parameters)";s:11:"phpdoc_name";s:9:"http_verb";}i:18;a:7:{s:4:"name";s:16:"raw_content_type";s:7:"default";s:15:"application/xml";s:11:"default_raw";s:17:"'application/xml'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:42:"The content type to use if a raw HTTP post";s:11:"phpdoc_name";s:16:"raw_content_type";}}s:4:"name";s:18:"http_download_file";s:11:"description";s:167:"Return the file in the URL by downloading it over HTTP. If a byte limit is given, it will only download that many bytes. It outputs warnings, returning null, on error.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:33:"The data downloaded (null: error)";}}s:24:"_load_blank_output_state";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:13:"just_tempcode";s:7:"default";s:13:"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 only restore the Tempcode execution part of the state.";s:11:"phpdoc_name";s:13:"just_tempcode";}i:1;a:7:{s:4:"name";s:10:"true_blank";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:90:"Whether to go for a completely blank state (no defaults!), not just a default fresh state.";s:11:"phpdoc_name";s:10:"true_blank";}}s:4:"name";s:24:"_load_blank_output_state";s:11:"description";s:26:"Load a fresh output state.";s:5:"flags";a:0:{}}s:17:"push_output_state";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:13:"just_tempcode";s:7:"default";s:13:"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 only restore the Tempcode execution part of the state.";s:11:"phpdoc_name";s:13:"just_tempcode";}i:1;a:7:{s:4:"name";s:10:"true_blank";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:90:"Whether to go for a completely blank state (no defaults!), not just a default fresh state.";s:11:"phpdoc_name";s:10:"true_blank";}}s:4:"name";s:17:"push_output_state";s:11:"description";s:58:"Push the output state on the stack and create a fresh one.";s:5:"flags";a:0:{}}s:20:"restore_output_state";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:13:"just_tempcode";s:7:"default";s:13:"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 only restore the Tempcode execution part of the state.";s:11:"phpdoc_name";s:13:"just_tempcode";}i:1;a:7:{s:4:"name";s:13:"merge_current";s:7:"default";s:13:"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 merge the current output state in.";s:11:"phpdoc_name";s:13:"merge_current";}i:2;a:7:{s:4:"name";s:4:"keep";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:"Settings to keep / merge if possible (null: none).";s:11:"phpdoc_name";s:4:"keep";}}s:4:"name";s:20:"restore_output_state";s:11:"description";s:78:"Restore the last output state on the stack, or a fresh one if none was pushed.";s:5:"flags";a:0:{}}s:9:"globalise";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"middle";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:75:"The Tempcode to put into a nice frame (null: support output streaming mode)";s:11:"phpdoc_name";s:6:"middle";}i:1;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:6:"?mixed";s:11:"description";s:33:"'Additional' message (null: none)";s:11:"phpdoc_name";s:7:"message";}i:2;a:8:{s:4:"name";s:4:"type";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:"The type of special message";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:14:"inform warn """;}i:3;a:7:{s:4:"name";s:25:"include_header_and_footer";s:7:"default";s:13:"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:"Whether to include the header/footer/panels";s:11:"phpdoc_name";s:25:"include_header_and_footer";}i:4;a:7:{s:4:"name";s:11:"show_border";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:134:"Whether to include a full screen rendering layout (will be overridable by 'show_border' GET parameter if present or if main page view)";s:11:"phpdoc_name";s:11:"show_border";}}s:4:"name";s:9:"globalise";s:11:"description";s:46:"Turn the Tempcode lump into a standalone page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Standalone page";}}s:23:"attach_to_screen_footer";a:5:{s:8:"filename";s:19:"sources/global3.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:5:"mixed";s:11:"description";s:36:"XHTML to attach (Tempcode or string)";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:23:"attach_to_screen_footer";s:11:"description";s:39:"Attach some XHTML to the screen footer.";s:5:"flags";a:0:{}}s:26:"set_extra_request_metadata";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"metadata";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Extra metadata";s:11:"phpdoc_name";s:8:"metadata";}i:1;a:7:{s:4:"name";s:3:"row";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:90:"Content row to automatically grab data from, if we also have $content_type (null: unknown)";s:11:"phpdoc_name";s:3:"row";}i:2;a:7:{s:4:"name";s:12:"content_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:28:"Content type (null: unknown)";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:7:{s:4:"name";s:10:"content_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:26:"Content ID (null: unknown)";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:26:"set_extra_request_metadata";s:11:"description";s:34:"Add some metadata for the request.";s:5:"flags";a:0:{}}s:20:"set_http_status_code";a:5:{s:8:"filename";s:19:"sources/global3.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:6:"string";s:11:"description";s:40:"The HTTP status code (should be numeric)";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:20:"set_http_status_code";s:11:"description";s:41:"Set the HTTP status code for the request.";s:5:"flags";a:0:{}}s:19:"find_template_place";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The codename of the template being loaded";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:105:"The language to load the template in (templates can embed language references) (null: users own language)";s:11:"phpdoc_name";s:4:"lang";}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:16:"The theme to use";s:11:"phpdoc_name";s:5:"theme";}i:3;a:5:{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";}i:4;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:13:"templates css";}i:5;a:7:{s:4:"name";s:15:"non_custom_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:47:"Whether to only search in the default templates";s:11:"phpdoc_name";s:15:"non_custom_only";}}s:4:"name";s:19:"find_template_place";s:11:"description";s:22:"Search for a template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:123:"List of parameters needed for the _do_template function to be able to load the template (null: could not find the template)";}}s:12:"is_wide_high";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"is_wide_high";s:11:"description";s:63:"Find whether panels and the header/footer areas won't be shown.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"BINARY";s:11:"description";s:7:"Result.";}}s:7:"is_wide";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"is_wide";s:11:"description";s:34:"Find whether panels will be shown.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"BINARY";s:11:"description";s:7:"Result.";}}s:15:"fix_bad_unicode";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Input string";s:11:"phpdoc_name";s:5:"input";}i:1;a:7:{s:4:"name";s:18:"definitely_unicode";s:7:"default";s:13:"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:"If we know the input is meant to be unicode";s:11:"phpdoc_name";s:18:"definitely_unicode";}}s:4:"name";s:15:"fix_bad_unicode";s:11:"description";s:343:"Fixes bad unicode (utf-8) in the input. Useful when input may be dirty, e.g. from a txt file, or from a potential hacker.The fix is imperfect, it will actually treat the input as ISO-8859-1 if not valid utf-8, then reconvert. Some limited scrambling is considered better than a stack trace.This function does nothing if we are not using utf-8.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:81:"Guaranteed valid utf-8, if we're using it, otherwise the same as the input string";}}s:13:"cms_mb_strlen";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{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:"The string to get the length of.";s:11:"phpdoc_name";s:2:"in";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force unicode as on.";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:13:"cms_mb_strlen";s:11:"description";s:64:"Get string length, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:18:"The string length.";}}s:13:"cms_mb_substr";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:4:{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:12:"The subject.";s:11:"phpdoc_name";s:2:"in";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The start position.";s:11:"phpdoc_name";s:4:"from";}i:2;a:7:{s:4:"name";s:6:"amount";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 length to extract (null: all remaining).";s:11:"phpdoc_name";s:6:"amount";}i:3;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force unicode as on.";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:13:"cms_mb_substr";s:11:"description";s:70:"Return part of a string, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:59:"String part (false: $start was over the end of the string).";}}s:14:"cms_mb_ucwords";a:6:{s:8:"filename";s:19:"sources/global3.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:8:"Subject.";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:14:"cms_mb_ucwords";s:11:"description";s:71:"Make a string title-case, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Result.";}}s:17:"cms_mb_strtolower";a:6:{s:8:"filename";s:19:"sources/global3.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:8:"Subject.";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:17:"cms_mb_strtolower";s:11:"description";s:70:"Make a string lowercase, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Result.";}}s:17:"cms_mb_strtoupper";a:6:{s:8:"filename";s:19:"sources/global3.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:8:"Subject.";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:17:"cms_mb_strtoupper";s:11:"description";s:70:"Make a string uppercase, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Result.";}}s:15:"is_ascii_string";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"String to test";s:11:"phpdoc_name";s:1:"x";}}s:4:"name";s:15:"is_ascii_string";s:11:"description";s:80:"Find if we a string is ASCII, and hence we can use non-UTF-safe functions on it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is ASCII";}}s:16:"is_writable_wrap";a:6:{s:8:"filename";s:19:"sources/global3.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:13:"The file path";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:16:"is_writable_wrap";s:11:"description";s:150:"Find whether a file/directory is writeable. This function is designed to get past that the PHP is_writable function does not work properly on Windows.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the file is writeable";}}s:23:"intelligent_write_error";a:5:{s:8:"filename";s:19:"sources/global3.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:61:"File path that could not be written (full path, not relative)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:23:"intelligent_write_error";s:11:"description";s:79:"Discern the cause of a file-write error, and show an appropriate error message.";s:5:"flags";a:0:{}}s:30:"intelligent_write_error_inline";a:6:{s:8:"filename";s:19:"sources/global3.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:35:"File path that could not be written";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:30:"intelligent_write_error_inline";s:11:"description";s:81:"Discern the cause of a file-write error, and return an appropriate error message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Message";}}s:12:"has_no_forum";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"has_no_forum";s:11:"description";s:46:"Find whether we have no forum on this website.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether we have no forum on this website";}}s:15:"addon_installed";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The module name";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:15:"non_bundled_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:73:"Whether to check non-bundled addons (ones without an addon_registry hook)";s:11:"phpdoc_name";s:15:"non_bundled_too";}}s:4:"name";s:15:"addon_installed";s:11:"description";s:38:"Check to see if an addon is installed.";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:19:"float_to_raw_string";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"num";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:10:"The number";s:11:"phpdoc_name";s:3:"num";}i:1;a:7:{s:4:"name";s:11:"decs_wanted";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:30:"The number of decimals to keep";s:11:"phpdoc_name";s:11:"decs_wanted";}i:2;a:7:{s:4:"name";s:16:"only_needed_decs";s:7:"default";s:13:"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 trim trailing zeros";s:11:"phpdoc_name";s:16:"only_needed_decs";}}s:4:"name";s:19:"float_to_raw_string";s:11:"description";s:90:"Convert a float to a "technical string representation of a float". Inverted with floatval.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The string converted";}}s:12:"float_format";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:19:"The value to format";s:11:"phpdoc_name";s:3:"val";}i:1;a:7:{s:4:"name";s:11:"decs_wanted";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:31:"The number of fractional digits";s:11:"phpdoc_name";s:11:"decs_wanted";}i:2;a:7:{s:4:"name";s:16:"only_needed_decs";s:7:"default";s:13:"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 trim trailing zeros";s:11:"phpdoc_name";s:16:"only_needed_decs";}}s:4:"name";s:12:"float_format";s:11:"description";s:108:"Format the given float number as a nicely formatted string (using the locale). Inverted with float_unformat.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"Nicely formatted string";}}s:14:"float_unformat";a:6:{s:8:"filename";s:19:"sources/global3.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:44:"The formatted float number using the locale.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:16:"no_thousands_sep";s:7:"default";s:13:"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 we do *not* expect a thousands separator, which means we can be a bit smarter.";s:11:"phpdoc_name";s:16:"no_thousands_sep";}}s:4:"name";s:14:"float_unformat";s:11:"description";s:100:"Take the given formatted float number and convert it to a native float. The inverse of float_format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:12:"Native float";}}s:14:"integer_format";a:6:{s:8:"filename";s:19:"sources/global3.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:7:"integer";s:11:"description";s:19:"The value to format";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:14:"integer_format";s:11:"description";s:80:"Format the given integer number as a nicely formatted string (using the locale).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"Nicely formatted string";}}s:20:"sort_maps_by__strlen";a:5:{s:8:"filename";s:19:"sources/global3.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:20:"List of maps to sort";s:11:"phpdoc_name";s:4:"rows";}i:1;a:5:{s:4:"name";s:8:"sort_key";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:143:"Either an integer sort key (to sort by integer key ID of contained arrays) or a String sort key (to sort by string key ID of contained arrays).";s:11:"phpdoc_name";s:8:"sort_key";}}s:4:"name";s:20:"sort_maps_by__strlen";s:11:"description";s:76:"Sort a list of maps by the string length of a particular key ID in the maps.";s:5:"flags";a:0:{}}s:12:"_strlen_sort";a:6:{s:8:"filename";s:19:"sources/global3.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:6:"string";s:11:"description";s:27:"The first string to compare";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:6:"string";s:11:"description";s:28:"The second string to compare";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:12:"_strlen_sort";s:11:"description";s:58:"Helper function for usort to sort a list by string length.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:60:"The comparison result (0 for equal, -1 for less, 1 for more)";}}s:12:"sort_maps_by";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:20:"List of maps to sort";s:11:"phpdoc_name";s:4:"rows";}i:1;a:5:{s:4:"name";s:9:"sort_keys";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:212:"Either an integer sort key (to sort by integer key ID of contained arrays) or a Comma-separated list of sort keys (to sort by string key ID of contained arrays; prefix '!' a key to reverse the sort order for it).";s:11:"phpdoc_name";s:9:"sort_keys";}i:2;a:7:{s:4:"name";s:26:"preserve_order_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Don't shuffle order unnecessarily (i.e. do a merge sort)";s:11:"phpdoc_name";s:26:"preserve_order_if_possible";}}s:4:"name";s:12:"sort_maps_by";s:11:"description";s:147:"Sort a list of maps by a particular key ID in the maps. Does not (and should not) preserve list indices, but does preserve associative key indices.";s:5:"flags";a:0:{}}s:10:"merge_sort";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:10:"Sort array";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:12:"cmp_function";s:7:"default";s:6:"strcmp";s:11:"default_raw";s:8:"'strcmp'";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Comparison function";s:11:"phpdoc_name";s:12:"cmp_function";}}s:4:"name";s:10:"merge_sort";s:11:"description";s:138:"Do a user sort, preserving order where reordering not needed. Based on a PHP manual comment at http://php.net/manual/en/function.usort.php";s:5:"flags";a:0:{}}s:11:"_multi_sort";a:6:{s:8:"filename";s:19:"sources/global3.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:20:"The first to compare";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:21:"The second to compare";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:11:"_multi_sort";s:11:"description";s:82:"Helper function to sort a list of maps by the value at $key in each of those maps.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:60:"The comparison result (0 for equal, -1 for less, 1 for more)";}}s:27:"cns_require_all_forum_stuff";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"cns_require_all_forum_stuff";s:11:"description";s:47:"Require all code relating to the Conversr forum";s:5:"flags";a:0:{}}s:11:"cms_tempnam";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"prefix";s:7:"default";s:3:"cms";s:11:"default_raw";s:5:"'cms'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The prefix of the temporary file name.";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:11:"cms_tempnam";s:11:"description";s:229:"Create file with unique file name, but works around compatibility issues between servers. Note that the file is NOT automatically deleted. You should also delete it using "@unlink", as some servers have problems with permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:46:"The name of the temporary file (false: error).";}}s:10:"array_peek";a:6:{s:8:"filename";s:19:"sources/global3.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:20:"The stack to peek in";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:10:"depth_down";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:39:"The depth into the stack we are peaking";s:11:"phpdoc_name";s:10:"depth_down";}}s:4:"name";s:10:"array_peek";s:11:"description";s:24:"Peek at a stack element.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:25:"The result of the peeking";}}s:6:"fix_id";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";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:5:"param";}}s:4:"name";s:6:"fix_id";s:11:"description";s:43:"Make a value suitable for use in an XML ID.";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:15:"match_key_match";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"match_keys";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:60:"Match keys (comma-separated list of match-keys, or array of)";s:11:"phpdoc_name";s:10:"match_keys";}i:1;a:7:{s:4:"name";s:12:"support_post";s:7:"default";s:13:"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:"Check against POSTed data too";s:11:"phpdoc_name";s:12:"support_post";}i:2;a:7:{s:4:"name";s:14:"current_params";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:101:"Parameters to check against (null: get from environment GET/POST) - if set, $support_post is ignored)";s:11:"phpdoc_name";s:14:"current_params";}i:3;a:7:{s:4:"name";s:17:"current_zone_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:46:"Current zone name (null: get from environment)";s:11:"phpdoc_name";s:17:"current_zone_name";}i:4;a:7:{s:4:"name";s:17:"current_page_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:46:"Current page name (null: get from environment)";s:11:"phpdoc_name";s:17:"current_page_name";}}s:4:"name";s:15:"match_key_match";s:11:"description";s:60:"See if the current URL matches the given Composr match-keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether there is a match";}}s:23:"get_page_or_script_name";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_page_or_script_name";s:11:"description";s:53:"Get the name of the page in the URL or active script.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The current page/script name";}}s:13:"get_page_name";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_page_name";s:11:"description";s:225:"Get the name of the page in the URL (by convention: the current page).This works on the basis of the 'page' parameter and does not require index.php be the active script.It will do dash to underscore substitution as required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The current page name";}}s:21:"fix_page_name_dashing";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Zone.";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:6:"string";s:11:"description";s:5:"Page.";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:21:"fix_page_name_dashing";s:11:"description";s:64:"Fix a page name that may have been given dashes for SEO reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The fixed page name.";}}s:11:"list_to_map";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"map_value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"The key key of our maps that reside in our map";s:11:"phpdoc_name";s:9:"map_value";}i:1;a:5:{s:4:"name";s:4:"list";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:4:"list";}}s:4:"name";s:11:"list_to_map";s:11:"description";s:292:"Take a list of maps, and make one of the values of each array the index of a map to the map.list_to_map is very useful for handling query results.Let's imagine you get the result of SELECT id,title FROM sometable.list_to_map turns the array of rows into a map between the id key and each row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The collapsed map";}}s:22:"collapse_2d_complexity";a:6:{s:8:"filename";s:19:"sources/global3.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:6:"string";s:11:"description";s:46:"The key key of our maps that reside in our map";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:6:"string";s:11:"description";s:48:"The value key of our maps that reside in our map";s:11:"phpdoc_name";s:5:"value";}i:2;a:5:{s:4:"name";s:4:"list";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The map of maps";s:11:"phpdoc_name";s:4:"list";}}s:4:"name";s:22:"collapse_2d_complexity";s:11:"description";s:71:"Take a list of maps of just two elements, and make it into a single map";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The collapsed map";}}s:22:"collapse_1d_complexity";a:6:{s:8:"filename";s:19:"sources/global3.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:"?string";s:11:"description";s:60:"The key of our maps that reside in our map (null: first key)";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"list";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The map of maps";s:11:"phpdoc_name";s:4:"list";}}s:4:"name";s:22:"collapse_1d_complexity";s:11:"description";s:70:"Take a list of maps of just one element, and make it into a single map";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The collapsed map";}}s:11:"is_valid_ip";a:6:{s:8:"filename";s:19:"sources/global3.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:20:"IP address to check.";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:11:"is_valid_ip";s:11:"description";s:35:"Find whether an IP address is valid";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the IP address is valid.";}}s:14:"get_ip_address";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:8:{s:4:"name";s:6:"amount";s:7:"default";i:4;s:11:"default_raw";s:1:"4";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:109:"The number of groups to include in the IP address (rest will be replaced with *'s). For IP6, this is doubled.";s:11:"phpdoc_name";s:6:"amount";s:3:"set";s:7:"1 2 3 4";}i:1;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:60:"IP address to use, normally left null (null: current user's)";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:14:"get_ip_address";s:11:"description";s:55:"Attempt to get the clean IP address of the current user";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:56:"The users IP address (blank: could not find a valid one)";}}s:20:"normalise_ip_address";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{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:27:"The IP address to normalise";s:11:"phpdoc_name";s:2:"ip";}i:1;a:7:{s:4:"name";s:6:"amount";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:33:"Amount to mask out (null: do not)";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:20:"normalise_ip_address";s:11:"description";s:31:"Normalise a provided IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:25:"The normalised IP address";}}s:8:"me_debug";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{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:20:"IP address of tester";s:11:"phpdoc_name";s:2:"ip";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:15:"Data to display";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:8:"me_debug";s:11:"description";s:53:"Exit with debug data, only for a specific IP address.";s:5:"flags";a:0:{}}s:18:"get_browser_string";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_browser_string";s:11:"description";s:37:"Get a string of the users web browser";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"The web browser string";}}s:13:"get_os_string";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_os_string";s:11:"description";s:31:"Get the user's operating system";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:27:"The operating system string";}}s:14:"cron_installed";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"cron_installed";s:11:"description";s:25:"Find if Cron is installed";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether Cron is installed";}}s:18:"compare_ip_address";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"wild";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The general IP address that is potentially wildcarded";s:11:"phpdoc_name";s:4:"wild";}i:1;a:5:{s:4:"name";s:4:"full";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:39:"The specific IP address we are checking";s:11:"phpdoc_name";s:4:"full";}}s:4:"name";s:18:"compare_ip_address";s:11:"description";s:96:"Compare two IP addresses for potential correlation. Not as simple as equality due to '*' syntax.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether the IP addresses correlate";}}s:22:"compare_ip_address_ip4";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"wild";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The general IP address that is potentially wildcarded";s:11:"phpdoc_name";s:4:"wild";}i:1;a:5:{s:4:"name";s:10:"full_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:61:"The exploded parts of the specific IP address we are checking";s:11:"phpdoc_name";s:10:"full_parts";}}s:4:"name";s:22:"compare_ip_address_ip4";s:11:"description";s:113:"Compare two IP addresses for potential correlation. Not as simple as equality due to '*' syntax. IP4-only variant";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether the IP addresses correlate";}}s:22:"compare_ip_address_ip6";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"wild";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The general IP address that is potentially wildcarded";s:11:"phpdoc_name";s:4:"wild";}i:1;a:5:{s:4:"name";s:10:"full_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:61:"The exploded parts of the specific IP address we are checking";s:11:"phpdoc_name";s:10:"full_parts";}}s:4:"name";s:22:"compare_ip_address_ip6";s:11:"description";s:113:"Compare two IP addresses for potential correlation. Not as simple as equality due to '*' syntax. IP6-only variant";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether the IP addresses correlate";}}s:9:"ip_banned";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:66:"The IP address to check for banning (potentially encoded with *'s)";s:11:"phpdoc_name";s:2:"ip";}i:1;a:7:{s:4:"name";s:8:"force_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:24:"Force check via database";s:11:"phpdoc_name";s:8:"force_db";}i:2;a:7:{s:4:"name";s:20:"handle_uncertainties";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:149:"Handle uncertainities (used for the external bans - if true, we may return null, showing we need to do an external check). Only works with $force_db.";s:11:"phpdoc_name";s:20:"handle_uncertainties";}}s:4:"name";s:9:"ip_banned";s:11:"description";s:40:"Check to see if an IP address is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:48:"Whether the IP address is banned (null: unknown)";}}s:6:"log_it";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:60:"The type of activity just carried out (a language string ID)";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:1:"a";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:66:"The most important parameter of the activity (e.g. D) (null: none)";s:11:"phpdoc_name";s:1:"a";}i:2;a:7:{s:4:"name";s:1:"b";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:91:"A secondary (perhaps, human readable) parameter of the activity (e.g. caption) (null: none)";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:6:"log_it";s:11:"description";s:13:"Log an action";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:33:"Log ID (null: did not save a log)";}}s:14:"php_addslashes";a:6:{s:8:"filename";s:19:"sources/global3.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:9:"String in";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:14:"php_addslashes";s:11:"description";s:48:"Escape a string to fit within PHP double quotes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Resultant string";}}s:21:"remove_duplicate_rows";a:6:{s:8:"filename";s:19:"sources/global3.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:33:"The rows to remove duplication of";s:11:"phpdoc_name";s:4:"rows";}i:1;a:7:{s:4:"name";s:8:"id_field";s:7:"default";s:2:"id";s:11:"default_raw";s:4:"'id'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The ID field";s:11:"phpdoc_name";s:8:"id_field";}}s:4:"name";s:21:"remove_duplicate_rows";s:11:"description";s:125:"Remove any duplication inside the list of rows (each row being a map). Duplication is defined by rows with correspinding IDs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The filtered rows";}}s:22:"member_tracking_update";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The page";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:7:"ID_TEXT";s:11:"description";s:8:"The type";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:22:"member_tracking_update";s:11:"description";s:57:"Update the member tracker for the currently viewing user.";s:5:"flags";a:0:{}}s:12:"is_invisible";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"is_invisible";s:11:"description";s:43:"Find whether the current user is invisible.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the current user is invisible";}}s:18:"get_num_users_site";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_num_users_site";s:11:"description";s:124:"Get the number of users on the site in the last 5 minutes. The function also maintains the statistic via the sessions table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The number of users on the site";}}s:18:"get_num_users_peak";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_num_users_peak";s:11:"description";s:72:"Get the largest amount of users ever to be on the site at the same time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:24:"The number of peak users";}}s:11:"escape_html";a:6:{s:8:"filename";s:19:"sources/global3.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:5:"mixed";s:11:"description";s:16:"The input string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:11:"escape_html";s:11:"description";s:58:"Get the specified string, but with all characters escaped.";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:15:"browser_matches";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:6:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The property code";s:11:"phpdoc_name";s:4:"code";s:3:"set";s:141:"android ios wysiwyg windows mac linux odd_os mobile ie ie8 ie8+ ie9 ie9+ gecko safari odd_browser chrome bot simplified_attachments_ui itunes";}i:1;a:7:{s:4:"name";s:7:"comcode";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:126:"Comcode that might be WYSIWYG edited; used to determine whether WYSIWYG may load when we'd prefer it to not do so (null: none)";s:11:"phpdoc_name";s:7:"comcode";}}s:4:"name";s:15:"browser_matches";s:11:"description";s:146:"See's if the current browser matches some special property code. Assumes users are keeping up on newish browsers (except for IE users, who are 6+)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether there is a match";}}s:9:"is_mobile";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:10:"user_agent";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:67:"The user agent (null: get from environment, current user's browser)";s:11:"phpdoc_name";s:10:"user_agent";}i:1;a:7:{s:4:"name";s:5:"truth";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:88:"Whether to always tell the truth (even if the current page does not have mobile support)";s:11:"phpdoc_name";s:5:"truth";}}s:4:"name";s:9:"is_mobile";s:11:"description";s:85:"Look at the user's browser, and decide if they are viewing on a mobile device or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the user is using a mobile device";}}s:12:"get_bot_type";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_bot_type";s:11:"description";s:60:"Get the name of a webcrawler bot, or null if no bot detected";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:38:"Webcrawling bot name (null: not a bot)";}}s:11:"has_cookies";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"has_cookies";s:11:"description";s:239:"Determine whether the user's browser supports cookies or not.Unfortunately this function will only return true once a user has been to the site more than once... Composr will set a cookie, and if it perseveres, that indicates cookies work.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the user has definitely got cookies";}}s:6:"has_js";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"has_js";s:11:"description";s:215:"Determine whether the user's browser supports JavaScript or not.Unfortunately this function will only return true once a user has been to the site more than once... JavaScript will set a cookie, indicating it works.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether the user has definitely got JavaScript";}}s:21:"flatten_slashed_array";a:6:{s:8:"filename";s:19:"sources/global3.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 convert";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:16:"already_stripped";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:68:"Whether PHP magic-quotes have already been cleaned out for the array";s:11:"phpdoc_name";s:16:"already_stripped";}}s:4:"name";s:21:"flatten_slashed_array";s:11:"description";s:46:"Turn an array into a humanely readable string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:41:"A humanely readable version of the array.";}}s:15:"wordfilter_text";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Text to filter";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:15:"wordfilter_text";s:11:"description";s:50:"Get a word-filtered version of the specified text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:34:"Filtered version of the input text";}}s:5:"mixed";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"mixed";s:11:"description";s:95:"Assign this to explicitly declare that a variable may be of mixed type, and initialise to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:29:"Of mixed type (null: default)";}}s:16:"seo_meta_get_for";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 ID of the resource";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:16:"seo_meta_get_for";s:11:"description";s:43:"Get meta information for specified resource";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:126:"A pair: The first element is the meta keyword string for the specified resource, and the other is the meta description string.";}}s:17:"seo_meta_load_for";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 ID of the resource";s:11:"phpdoc_name";s:2:"id";}i:2;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:7:"?string";s:11:"description";s:146:"The page-specific title to use, in Comcode or plain-text format with possible HTML entities included [Comcode will later be stripped] (null: none)";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:17:"seo_meta_load_for";s:11:"description";s:153:"Load the specified resource's meta information into the system for use on this page.Also, if the title is specified then this is used for the page title.";s:5:"flags";a:0:{}}s:15:"get_loaded_tags";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:8:"limit_to";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:75:"The search code for this tag content (e.g. downloads) (null: there is none)";s:11:"phpdoc_name";s:8:"limit_to";}i:1;a:7:{s:4:"name";s:8:"the_tags";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:62:"Explicitly pass a list of tags instead (null: use loaded ones)";s:11:"phpdoc_name";s:8:"the_tags";}}s:4:"name";s:15:"get_loaded_tags";s:11:"description";s:80:"Get Tempcode for tags, based on loaded up from SEO keywords (seo_meta_load_for).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Loaded tag output (or blank if there are none)";}}s:21:"get_zone_default_page";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"zone_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Zone name";s:11:"phpdoc_name";s:9:"zone_name";}}s:4:"name";s:21:"get_zone_default_page";s:11:"description";s:32:"Get the default page for a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Default page";}}s:8:"titleify";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"boring";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The codename";s:11:"phpdoc_name";s:6:"boring";}}s:4:"name";s:8:"titleify";s:11:"description";s:46:"Turn a boring codename, into a "pretty" title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The title";}}s:20:"propagate_filtercode";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"prefix";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:43:"Prefix for main filter environment variable";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:20:"propagate_filtercode";s:11:"description";s:35:"Propagate Filtercode through links.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"Extra URL mappings";}}s:30:"propagate_filtercode_page_link";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"propagate_filtercode_page_link";s:11:"description";s:40:"Propagate Filtercode through page-links.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Extra page-link mappings";}}s:26:"make_fractionable_editable";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:76:"Content title (either unescaped string, or Compiled Comcode [i.e. Tempcode])";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:26:"make_fractionable_editable";s:11:"description";s:60:"Make some text fractionably editable (i.e. inline editable).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:39:"Inline editable HTML to put into output";}}s:15:"fractional_edit";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"fractional_edit";s:11:"description";s:43:"Find whether a fractional edit is underway.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether a fractional edit is underway";}}s:10:"strip_html";a:6:{s:8:"filename";s:19:"sources/global3.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:4:"HTML";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:10:"strip_html";s:11:"description";s:32:"Convert some HTML to plain text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"Plain text";}}s:18:"get_brand_base_url";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_brand_base_url";s:11:"description";s:36:"Find the base URL for documentation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The base URL for documentation";}}s:16:"get_tutorial_url";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"tutorial";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:54:"Name of a tutorial (null: don't include the page part)";s:11:"phpdoc_name";s:8:"tutorial";}}s:4:"name";s:16:"get_tutorial_url";s:11:"description";s:32:"Get a URL to a Composr tutorial.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:17:"URL to a tutorial";}}s:18:"get_brand_page_url";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"params";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:7:"URL map";s:11:"phpdoc_name";s:6:"params";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:4:"Zone";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:18:"get_brand_page_url";s:11:"description";s:29:"Get a URL to a compo.sr page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:11:"URL to page";}}s:10:"brand_name";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"brand_name";s:11:"description";s:19:"Get the brand name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"The brand name";}}s:21:"is_cns_satellite_site";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"is_cns_satellite_site";s:11:"description";s:44:"Find if we're on an Conversr satellite site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:9:"If we are";}}s:20:"convert_guids_to_ids";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Input text";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:20:"convert_guids_to_ids";s:11:"description";s:34:"Convert GUIDs to IDs in some text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Output text";}}s:20:"set_mass_import_mode";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"doing_mass_import";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:8:"If it is";s:11:"phpdoc_name";s:17:"doing_mass_import";}}s:4:"name";s:20:"set_mass_import_mode";s:11:"description";s:36:"Set if a mass-import is in progress.";s:5:"flags";a:0:{}}s:20:"get_mass_import_mode";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_mass_import_mode";s:11:"description";s:37:"Find if a mass-import is in progress.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"If it is";}}s:19:"escapeshellarg_wrap";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"arg";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The argument.";s:11:"phpdoc_name";s:3:"arg";}}s:4:"name";s:19:"escapeshellarg_wrap";s:11:"description";s:89:"Prepare an argument for use literally in a command. Works around common PHP restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"Escaped.";}}s:15:"running_locally";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"running_locally";s:11:"description";s:76:"Find whether Composr is running on a local network, rather than a live-site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:24:"If it is running locally";}}s:23:"appengine_general_guard";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"appengine_general_guard";s:11:"description";s:80:"Exit if we are running on a Google App Engine application (live or development).";s:5:"flags";a:0:{}}s:20:"appengine_live_guard";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"appengine_live_guard";s:11:"description";s:63:"Exit if we are running on a live Google App Engine application.";s:5:"flags";a:0:{}}s:22:"secure_serialized_data";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:22:"&$data Serialized data";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:16:"safe_replacement";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:67:"What to substitute if objects are contained (null: substitute null)";s:11:"phpdoc_name";s:16:"safe_replacement";}}s:4:"name";s:22:"secure_serialized_data";s:11:"description";s:57:"Check serialized data for objects, as a security measure.";s:5:"flags";a:0:{}}s:28:"update_catalogue_content_ref";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:12:"Content type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Old value";s:11:"phpdoc_name";s:4:"from";}i:2;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"New value";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:28:"update_catalogue_content_ref";s:11:"description";s:59:"Update a catalogue content field reference, to a new value.";s:5:"flags";a:0:{}}s:21:"cms_profile_start_for";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Identifier";s:11:"phpdoc_name";s:10:"identifier";}}s:4:"name";s:21:"cms_profile_start_for";s:11:"description";s:75:"Start a profiling block, for a specified identifier (of your own choosing).";s:5:"flags";a:0:{}}s:19:"cms_profile_end_for";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Identifier";s:11:"phpdoc_name";s:10:"identifier";}i:1;a:7:{s:4:"name";s:9:"specifics";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:90:"Longer details of what happened (e.g. a specific SQL query that ran) (null: none provided)";s:11:"phpdoc_name";s:9:"specifics";}}s:4:"name";s:19:"cms_profile_end_for";s:11:"description";s:131:"End a profiling block, for a specified identifier (of your own choosing - but you must have started it with cms_profile_start_for).";s:5:"flags";a:0:{}}s:21:"send_http_output_ping";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"send_http_output_ping";s:11:"description";s:204:"Put out some benign HTTP output.FastCGI seems to have a weird issue with 'slowish spiky process not continuing with output' - this works around it. Not ideal as would break headers in any subsequent code.";s:5:"flags";a:0:{}}s:21:"set_high_security_csp";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:25:"enable_more_open_html_for";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:388:"Allow more open HTML for a particular member ID (null: no member). It still will use the HTML blacklist functionality (unless they have even higher access already), but will remove the more restrictive whitelist functionality. Use of set_high_security_csp here is further decreasing the risk from dangerous HTML, even though the risk should be very low anyway due to the blacklist filter.";s:11:"phpdoc_name";s:25:"enable_more_open_html_for";}}s:4:"name";s:21:"set_high_security_csp";s:11:"description";s:157:"Improve security by turning on a strict CSP that only allows stuff from partner sites and disables frames and forms.Must be called before page output starts.";s:5:"flags";a:0:{}}s:23:"set_no_clickjacking_csp";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"set_no_clickjacking_csp";s:11:"description";s:55:"Set a CSP header to not allow any frames to include us.";s:5:"flags";a:0:{}}s:29:"disable_browser_xss_detection";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"disable_browser_xss_detection";s:11:"description";s:82:"Stop the web browser trying to save us, and breaking some requests in the process.";s:5:"flags";a:0:{}}s:23:"support_smart_decaching";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:25:"support_temporary_disable";s:7:"default";s:13:"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:"Support it being temporarily disabled";s:11:"phpdoc_name";s:25:"support_temporary_disable";}}s:4:"name";s:23:"support_smart_decaching";s:11:"description";s:108:"Whether smart decaching is enabled. It is slightly inefficient but makes site development easier for people.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"If smart decaching is enabled";}}s:35:"disable_smart_decaching_temporarily";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"disable_smart_decaching_temporarily";s:11:"description";s:137:"For performance reasons disable smart decaching for cases that allow it to be disabled temporarily (it does a lot of file system checks).";s:5:"flags";a:0:{}}s:27:"has_interesting_post_fields";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"has_interesting_post_fields";s:11:"description";s:122:"Find if the current request has POST fields worth considering/propagating. Very standard framework fields will be ignored.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:13:"escape_header";a:6:{s:8:"filename";s:19:"sources/global3.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:26:"Text to insert into header";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:13:"within_quotes";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Text is between quotes";s:11:"phpdoc_name";s:13:"within_quotes";}}s:4:"name";s:13:"escape_header";s:11:"description";s:34:"Apply escaping for an HTTP header.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Escaped text";}}s:13:"init__global4";a:5:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__global4";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:26:"attach_message_site_closed";a:5:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"messages_bottom";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Where to place the message.";s:11:"phpdoc_name";s:15:"messages_bottom";}}s:4:"name";s:26:"attach_message_site_closed";s:11:"description";s:51:"Attach a message mentioning how the site is closed.";s:5:"flags";a:0:{}}s:17:"attach_message_su";a:5:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"messages_bottom";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Where to place the message.";s:11:"phpdoc_name";s:15:"messages_bottom";}}s:4:"name";s:17:"attach_message_su";s:11:"description";s:41:"Attach a message mentioning SU is active.";s:5:"flags";a:0:{}}s:26:"_save_web_resource_merging";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"resources";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"Resources (map of keys to 1), passed by reference as we alter it";s:11:"phpdoc_name";s:9:"resources";}i:1;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:8:".css .js";}i:2;a:5:{s:4:"name";s:10:"write_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:10:"Write path";s:11:"phpdoc_name";s:10:"write_path";}}s:4:"name";s:26:"_save_web_resource_merging";s:11:"description";s:36:"Save a file of merged web resources.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:21:"If the merge happened";}}s:17:"make_xhtml_strict";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"global";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:15:"Tempcode object";s:11:"phpdoc_name";s:6:"global";}}s:4:"name";s:17:"make_xhtml_strict";s:11:"description";s:75:"Take a Tempcode object and run some hackerish code to make it XHTML-strict.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"object";s:11:"description";s:38:"Tempcode object (no longer cache safe)";}}s:33:"member_personal_links_and_details";a:6:{s:8:"filename";s:19:"sources/global4.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:11:"A member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:33:"member_personal_links_and_details";s:11:"description";s:42:"Get links and details related to a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:131:"A tuple: links (Tempcode), eCommerce links (Tempcode), details (Tempcode), number of unread inline personal posts or private topics";}}s:27:"handle_has_checked_recently";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"id_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:57:"Special check code (often a URL but does not need to be).";s:11:"phpdoc_name";s:7:"id_code";}}s:4:"name";s:27:"handle_has_checked_recently";s:11:"description";s:161:"Use the url_title_cache table (a bit of a hack but saved changed the DB structure) to see if a check-op was performed has been performed within the last 30 days.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the check has happened recently.";}}s:16:"cms_mb_str_split";a:6:{s:8:"filename";s:19:"sources/global4.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:6:"Input.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force unicode as on.";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:16:"cms_mb_str_split";s:11:"description";s:75:"Convert a string to an array, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"Output.";}}s:18:"cms_mb_chunk_split";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:4:{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:17:"The input string.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:3:"len";s:7:"default";i:76;s:11:"default_raw";s:2:"76";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The maximum chunking length.";s:11:"phpdoc_name";s:3:"len";}i:2;a:7:{s:4:"name";s:4:"glue";s:7:"default";s:2:"
+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:7:"ID_TEXT";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:7:"ID_TEXT";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:7:"ID_TEXT";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:7:"ID_TEXT";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:7:"ID_TEXT";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:7:"ID_TEXT";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:7:"ID_TEXT";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:7:"ID_TEXT";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:7:"ID_TEXT";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:20:{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:21:"db_uses_offset_syntax";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"db_uses_offset_syntax";s:11:"description";s:49:"Whether 'OFFSET' syntax is used on limit clauses.";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_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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:30:"Hook_choose_catalogue_category";s:7:"comment";b:1;}s:27:"Hook_choose_catalogue_entry";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/ajax_tree/choose_catalogue_entry.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:58:"sources/hooks/systems/ajax_tree/choose_catalogue_entry.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:27:"Hook_choose_catalogue_entry";s:7:"comment";b:1;}s:34:"Hook_choose_composr_homesite_addon";a:3:{s:9:"functions";a:3:{s:8:"get_file";a:6:{s:8:"filename";s:65:"sources/hooks/systems/ajax_tree/choose_composr_homesite_addon.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:8:"?ID_TEXT";s:11:"description";s:31:"The ID to do under (null: root)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:8:"get_file";s:11:"description";s:41:"This will get the XML file from compo.sr.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"The XML file";}}s:3:"run";a:6:{s:8:"filename";s:65:"sources/hooks/systems/ajax_tree/choose_composr_homesite_addon.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:65:"sources/hooks/systems/ajax_tree/choose_composr_homesite_addon.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: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";}i:3;a:7:{s:4:"name";s:6:"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:23:"Prefix titles with this";s:11:"phpdoc_name";s:6:"prefix";}}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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:34:"Hook_choose_composr_homesite_addon";s:7:"comment";b:1;}s:20:"Hook_choose_download";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ajax_tree/choose_download.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:51:"sources/hooks/systems/ajax_tree/choose_download.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:20:"Hook_choose_download";s:7:"comment";b:1;}s:29:"Hook_choose_download_category";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/ajax_tree/choose_download_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:60:"sources/hooks/systems/ajax_tree/choose_download_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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:29:"Hook_choose_download_category";s:7:"comment";b:1;}s:25:"Hook_choose_filedump_file";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/ajax_tree/choose_filedump_file.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:56:"sources/hooks/systems/ajax_tree/choose_filedump_file.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:25:"Hook_choose_filedump_file";s:7:"comment";b:1;}s:17:"Hook_choose_forum";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ajax_tree/choose_forum.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:48:"sources/hooks/systems/ajax_tree/choose_forum.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:17:"Hook_choose_forum";s:7:"comment";b:1;}s:19:"Hook_choose_gallery";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/ajax_tree/choose_gallery.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:50:"sources/hooks/systems/ajax_tree/choose_gallery.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:19:"Hook_choose_gallery";s:7:"comment";b:1;}s:17:"Hook_choose_image";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ajax_tree/choose_image.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:48:"sources/hooks/systems/ajax_tree/choose_image.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:17:"Hook_choose_image";s:7:"comment";b:1;}s:17:"Hook_choose_topic";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ajax_tree/choose_topic.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:48:"sources/hooks/systems/ajax_tree/choose_topic.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:17:"Hook_choose_topic";s:7:"comment";b:1;}s:17:"Hook_choose_video";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ajax_tree/choose_video.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:48:"sources/hooks/systems/ajax_tree/choose_video.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:17:"Hook_choose_video";s:7:"comment";b:1;}s:21:"Hook_choose_wiki_page";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/ajax_tree/choose_wiki_page.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:52:"sources/hooks/systems/ajax_tree/choose_wiki_page.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 -list, for fallback purposes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The nice list";}}}s:4:"name";s:21:"Hook_choose_wiki_page";s:7:"comment";b:1;}s:23:"Hook_attachments_author";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/attachments/author.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:23:"Hook_attachments_author";s:7:"comment";b:1;}s:25:"Hook_attachments_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/attachments/calendar.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:25:"Hook_attachments_calendar";s:7:"comment";b:1;}s:32:"Hook_attachments_catalogue_entry";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/attachments/catalogue_entry.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:32:"Hook_attachments_catalogue_entry";s:7:"comment";b:1;}s:25:"Hook_attachments_cns_post";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/attachments/cns_post.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:25:"Hook_attachments_cns_post";s:7:"comment";b:1;}s:30:"Hook_attachments_cns_signature";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/attachments/cns_signature.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:30:"Hook_attachments_cns_signature";s:7:"comment";b:1;}s:29:"Hook_attachments_comcode_page";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/attachments/comcode_page.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:29:"Hook_attachments_comcode_page";s:7:"comment";b:1;}s:21:"Hook_attachments_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/attachments/news.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:21:"Hook_attachments_news";s:7:"comment";b:1;}s:21:"Hook_attachments_null";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/attachments/null.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:21:"Hook_attachments_null";s:7:"comment";b:1;}s:26:"Hook_attachments_wiki_page";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/attachments/wiki_page.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:26:"Hook_attachments_wiki_page";s:7:"comment";b:1;}s:26:"Hook_attachments_wiki_post";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/attachments/wiki_post.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:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"The database connection to check on";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:3:"run";s:11:"description";s:143:"Run function for attachment hooks. They see if permission to an attachment of an ID relating to this content is present for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}}s:4:"name";s:26:"Hook_attachments_wiki_post";s:7:"comment";b:1;}s:30:"Hook_block_ui_renderers_awards";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:51:"sources/hooks/systems/block_ui_renderers/awards.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:30:"Hook_block_ui_renderers_awards";s:7:"comment";b:1;}s:31:"Hook_block_ui_renderers_banners";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:52:"sources/hooks/systems/block_ui_renderers/banners.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:31:"Hook_block_ui_renderers_banners";s:7:"comment";b:1;}s:34:"Hook_block_ui_renderers_catalogues";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:55:"sources/hooks/systems/block_ui_renderers/catalogues.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:34:"Hook_block_ui_renderers_catalogues";s:7:"comment";b:1;}s:28:"Hook_block_ui_renderers_chat";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:49:"sources/hooks/systems/block_ui_renderers/chat.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:28:"Hook_block_ui_renderers_chat";s:7:"comment";b:1;}s:33:"Hook_block_ui_renderers_galleries";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:54:"sources/hooks/systems/block_ui_renderers/galleries.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:33:"Hook_block_ui_renderers_galleries";s:7:"comment";b:1;}s:28:"Hook_block_ui_renderers_news";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:49:"sources/hooks/systems/block_ui_renderers/news.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:28:"Hook_block_ui_renderers_news";s:7:"comment";b:1;}s:35:"Hook_block_ui_renderers_newsletters";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:56:"sources/hooks/systems/block_ui_renderers/newsletters.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:35:"Hook_block_ui_renderers_newsletters";s:7:"comment";b:1;}s:29:"Hook_block_ui_renderers_polls";a:3:{s:9:"functions";a:1:{s:15:"render_block_ui";a:6:{s:8:"filename";s:50:"sources/hooks/systems/block_ui_renderers/polls.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The block";s:11:"phpdoc_name";s:5:"block";}i:1;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The parameter of the block";s:11:"phpdoc_name";s:9:"parameter";}i:2;a:5:{s:4:"name";s:11:"has_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether there is a default value for the field, due to this being an edit";s:11:"phpdoc_name";s:11:"has_default";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default value for field";s:11:"phpdoc_name";s:7:"default";}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:17:"Field description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"render_block_ui";s:11:"description";s:71:"See if a particular block parameter's UI input can be rendered by this.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:35:"Rendered field (null: not handled).";}}}s:4:"name";s:29:"Hook_block_ui_renderers_polls";s:7:"comment";b:1;}s:29:"Hook_change_detection_tickets";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/change_detection/tickets.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:42:"The sample data, serialised and then MD5'd";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:3:"run";s:11:"description";s:114:"Run function for change_detection hooks. They see if their own something has changed in comparison to sample data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether the something has changed";}}}s:4:"name";s:29:"Hook_change_detection_tickets";s:7:"comment";b:1;}s:19:"Hook_check_base_url";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/checks/base_url.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:19:"Hook_check_base_url";s:7:"comment";b:1;}s:25:"Hook_check_directory_name";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/checks/directory_name.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:25:"Hook_check_directory_name";s:7:"comment";b:1;}s:21:"Hook_check_disk_space";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/checks/disk_space.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:21:"Hook_check_disk_space";s:7:"comment";b:1;}s:23:"Hook_check_file_uploads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/checks/file_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:23:"Hook_check_file_uploads";s:7:"comment";b:1;}s:27:"Hook_check_functions_needed";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/checks/functions_needed.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:27:"Hook_check_functions_needed";s:7:"comment";b:1;}s:13:"Hook_check_gd";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:35:"sources/hooks/systems/checks/gd.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:13:"Hook_check_gd";s:7:"comment";b:1;}s:29:"Hook_check_max_execution_time";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/checks/max_execution_time.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:29:"Hook_check_max_execution_time";s:7:"comment";b:1;}s:25:"Hook_check_max_input_vars";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/checks/max_input_vars.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:25:"Hook_check_max_input_vars";s:7:"comment";b:1;}s:28:"Hook_check_mbstring_overload";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/checks/mbstring_overload.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:28:"Hook_check_mbstring_overload";s:7:"comment";b:1;}s:17:"Hook_check_memory";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/checks/memory.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:17:"Hook_check_memory";s:7:"comment";b:1;}s:22:"Hook_check_modsecurity";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/checks/modsecurity.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:22:"Hook_check_modsecurity";s:7:"comment";b:1;}s:24:"Hook_check_mysql_version";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/checks/mysql_version.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:24:"Hook_check_mysql_version";s:7:"comment";b:1;}s:23:"Hook_check_no_ad_script";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/checks/no_ad_script.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:23:"Hook_check_no_ad_script";s:7:"comment";b:1;}s:32:"Hook_check_normative_performance";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/checks/normative_performance.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:32:"Hook_check_normative_performance";s:7:"comment";b:1;}s:22:"Hook_check_php_version";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/checks/php_version.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:22:"Hook_check_php_version";s:7:"comment";b:1;}s:23:"Hook_check_suhosin_eval";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/checks/suhosin_eval.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:23:"Hook_check_suhosin_eval";s:7:"comment";b:1;}s:16:"Hook_check_unzip";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/checks/unzip.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:16:"Hook_check_unzip";s:7:"comment";b:1;}s:14:"Hook_check_utf";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:36:"sources/hooks/systems/checks/utf.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:14:"Hook_check_utf";s:7:"comment";b:1;}s:14:"Hook_check_xml";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:36:"sources/hooks/systems/checks/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:37:"Check various input var restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of warnings";}}}s:4:"name";s:14:"Hook_check_xml";s:7:"comment";b:1;}s:31:"Hook_cleanup_admin_theme_images";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:52:"sources/hooks/systems/cleanup/admin_theme_images.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/cleanup/admin_theme_images.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:31:"Hook_cleanup_admin_theme_images";s:7:"comment";b:1;}s:19:"Hook_cleanup_blocks";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:40:"sources/hooks/systems/cleanup/blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/cleanup/blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:19:"Hook_cleanup_blocks";s:7:"comment";b:1;}s:24:"Hook_cleanup_broken_urls";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:45:"sources/hooks/systems/cleanup/broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/cleanup/broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:24:"Hook_cleanup_broken_urls";s:7:"comment";b:1;}s:16:"Hook_cleanup_cns";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/hooks/systems/cleanup/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/hooks/systems/cleanup/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:16:"Hook_cleanup_cns";s:7:"comment";b:1;}s:24:"Hook_cleanup_cns_members";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:45:"sources/hooks/systems/cleanup/cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/cleanup/cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:24:"Hook_cleanup_cns_members";s:7:"comment";b:1;}s:23:"Hook_cleanup_cns_topics";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cleanup/cns_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cleanup/cns_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:23:"Hook_cleanup_cns_topics";s:7:"comment";b:1;}s:20:"Hook_cleanup_comcode";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:41:"sources/hooks/systems/cleanup/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/cleanup/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:20:"Hook_cleanup_comcode";s:7:"comment";b:1;}s:26:"Hook_cleanup_comcode_pages";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cleanup/comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cleanup/comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:26:"Hook_cleanup_comcode_pages";s:7:"comment";b:1;}s:35:"Hook_cleanup_criticise_mysql_fields";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:56:"sources/hooks/systems/cleanup/criticise_mysql_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/cleanup/criticise_mysql_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:35:"Hook_cleanup_criticise_mysql_fields";s:7:"comment";b:1;}s:25:"Hook_cleanup_image_thumbs";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/image_thumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/image_thumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}s:22:"directory_thumb_mirror";a:5:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/image_thumbs.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:6:"string";s:11:"description";s:19:"Directory to mirror";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:22:"directory_thumb_mirror";s:11:"description";s:105:"Create filename-mirrored thumbnails for the given directory stub (mirrors stub/foo with stub_thumbs/foo).";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Hook_cleanup_image_thumbs";s:7:"comment";b:1;}s:21:"Hook_cleanup_language";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/systems/cleanup/language.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/cleanup/language.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:21:"Hook_cleanup_language";s:7:"comment";b:1;}s:30:"Hook_cleanup_lost_disk_content";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/cleanup/lost_disk_content.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/cleanup/lost_disk_content.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:30:"Hook_cleanup_lost_disk_content";s:7:"comment";b:1;}s:27:"Hook_cleanup_mysql_optimise";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/systems/cleanup/mysql_optimise.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/cleanup/mysql_optimise.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:27:"Hook_cleanup_mysql_optimise";s:7:"comment";b:1;}s:34:"Hook_cleanup_orphaned_lang_strings";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:55:"sources/hooks/systems/cleanup/orphaned_lang_strings.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/cleanup/orphaned_lang_strings.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:34:"Hook_cleanup_orphaned_lang_strings";s:7:"comment";b:1;}s:29:"Hook_cleanup_orphaned_uploads";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/cleanup/orphaned_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/cleanup/orphaned_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_cleanup_orphaned_uploads";s:7:"comment";b:1;}s:25:"Hook_cleanup_page_backups";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/page_backups.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/page_backups.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}s:7:"process";a:5:{s:8:"filename";s:46:"sources/hooks/systems/cleanup/page_backups.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:4:"Path";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:7:"process";s:11:"description";s:59:"Move revision files from the given path, to a subdirectory.";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Hook_cleanup_page_backups";s:7:"comment";b:1;}s:23:"Hook_cleanup_page_stats";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cleanup/page_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cleanup/page_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:23:"Hook_cleanup_page_stats";s:7:"comment";b:1;}s:26:"Hook_cleanup_self_learning";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cleanup/self_learning.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cleanup/self_learning.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:26:"Hook_cleanup_self_learning";s:7:"comment";b:1;}s:18:"Hook_cleanup_stats";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:39:"sources/hooks/systems/cleanup/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/cleanup/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:18:"Hook_cleanup_stats";s:7:"comment";b:1;}s:17:"Hook_cleanup_tags";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cleanup/tags.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cleanup/tags.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:17:"Hook_cleanup_tags";s:7:"comment";b:1;}s:22:"Hook_cleanup_templates";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/systems/cleanup/templates.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/cleanup/templates.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:22:"Hook_cleanup_templates";s:7:"comment";b:1;}s:17:"Hook_cleanup_urls";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cleanup/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details about this cleanup hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of cleanup hook info (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cleanup/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:28:"Run the cleanup hook action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:17:"Hook_cleanup_urls";s:7:"comment";b:1;}s:17:"Hook_cns_auth_aef";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cns_auth/aef.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:17:"Hook_cns_auth_aef";s:7:"comment";b:1;}s:22:"Hook_cns_auth_converge";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:43:"sources/hooks/systems/cns_auth/converge.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:22:"Hook_cns_auth_converge";s:7:"comment";b:1;}s:20:"Hook_cns_auth_phpbb3";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:41:"sources/hooks/systems/cns_auth/phpbb3.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:20:"Hook_cns_auth_phpbb3";s:7:"comment";b:1;}s:17:"Hook_cns_auth_smf";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cns_auth/smf.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:17:"Hook_cns_auth_smf";s:7:"comment";b:1;}s:17:"Hook_cns_auth_vb3";a:3:{s:9:"functions";a:1:{s:4:"auth";a:6:{s:8:"filename";s:38:"sources/hooks/systems/cns_auth/vb3.php";s:10:"parameters";a:6:{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:5:{s:4:"name";s:12:"cookie_login";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";}i:5;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Row of Conversr account";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:4:"auth";s:11:"description";s:59:"Try and authenticate for our password compatibility scheme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:26:"Error message (null: none)";}}}s:4:"name";s:17:"Hook_cns_auth_vb3";s:7:"comment";b:1;}s:29:"Hook_cns_cpf_filter_ecommerce";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:50:"sources/hooks/systems/cns_cpf_filter/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:29:"Hook_cns_cpf_filter_ecommerce";s:7:"comment";b:1;}s:33:"Hook_cns_cpf_filter_notifications";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:54:"sources/hooks/systems/cns_cpf_filter/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:33:"Hook_cns_cpf_filter_notifications";s:7:"comment";b:1;}s:27:"Hook_cns_cpf_filter_options";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:48:"sources/hooks/systems/cns_cpf_filter/options.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:27:"Hook_cns_cpf_filter_options";s:7:"comment";b:1;}s:26:"Hook_cns_cpf_filter_points";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:47:"sources/hooks/systems/cns_cpf_filter/points.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:26:"Hook_cns_cpf_filter_points";s:7:"comment";b:1;}s:31:"Hook_cns_cpf_filter_points_chat";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:52:"sources/hooks/systems/cns_cpf_filter/points_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:31:"Hook_cns_cpf_filter_points_chat";s:7:"comment";b:1;}s:31:"Hook_cns_cpf_filter_points_wiki";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:52:"sources/hooks/systems/cns_cpf_filter/points_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:31:"Hook_cns_cpf_filter_points_wiki";s:7:"comment";b:1;}s:33:"Hook_cns_cpf_filter_shopping_cart";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:54:"sources/hooks/systems/cns_cpf_filter/shopping_cart.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:33:"Hook_cns_cpf_filter_shopping_cart";s:7:"comment";b:1;}s:23:"Hook_cns_cpf_filter_sms";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:44:"sources/hooks/systems/cns_cpf_filter/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:23:"Hook_cns_cpf_filter_sms";s:7:"comment";b:1;}s:32:"Hook_cns_cpf_filter_staff_filter";a:3:{s:9:"functions";a:1:{s:9:"to_enable";a:6:{s:8:"filename";s:53:"sources/hooks/systems/cns_cpf_filter/staff_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"to_enable";s:11:"description";s:34:"Find which special CPFs to enable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A list of CPFs to enable";}}}s:4:"name";s:32:"Hook_cns_cpf_filter_staff_filter";s:7:"comment";b:1;}s:41:"Hook_comcode_link_handler_media_rendering";a:3:{s:9:"functions";a:1:{s:4:"bind";a:6:{s:8:"filename";s:63:"sources/hooks/systems/comcode_link_handlers/media_rendering.php";s:10:"parameters";a:11:{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:21:"Link to use or reject";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:17:"comcode_dangerous";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether we are allowed to proceed even if this tag is marked as 'dangerous'";s:11:"phpdoc_name";s:17:"comcode_dangerous";}i:2;a:5:{s:4:"name";s:7:"pass_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:100:"A special identifier to mark where the resultant Tempcode is going to end up (e.g. the ID of a post)";s:11:"phpdoc_name";s:7:"pass_id";}i:3;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The position this tag occurred at in the Comcode";s:11:"phpdoc_name";s:3:"pos";}i:4;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:6;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:7;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The whole chunk of Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:8;a:5:{s:4:"name";s:15:"structure_sweep";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is only a structure sweep";s:11:"phpdoc_name";s:15:"structure_sweep";}i:9;a:5:{s:4:"name";s:14:"semiparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether we are in semi-parse-mode (some tags might convert differently)";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:10;a:5:{s:4:"name";s:14:"highlight_bits";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:41:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}}s:4:"name";s:4:"bind";s:11:"description";s:115:"Bind function for Comcode link handler hooks. They see if they can bind a pasted URL to a lump of handler Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:61:"Handled link (null: reject due to inappropriate link pattern)";}}}s:4:"name";s:41:"Hook_comcode_link_handler_media_rendering";s:7:"comment";b:1;}s:33:"Hook_commandr_command_alien_check";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_commands/alien_check.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:33:"Hook_commandr_command_alien_check";s:7:"comment";b:1;}s:36:"Hook_commandr_command_antispam_check";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_commands/antispam_check.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:36:"Hook_commandr_command_antispam_check";s:7:"comment";b:1;}s:28:"Hook_commandr_command_append";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/append.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:28:"Hook_commandr_command_append";s:7:"comment";b:1;}s:28:"Hook_commandr_command_ban_ip";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/ban_ip.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:28:"Hook_commandr_command_ban_ip";s:7:"comment";b:1;}s:32:"Hook_commandr_command_ban_member";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/commandr_commands/ban_member.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:73:"Array of stdcommand, stdhtml, stdout, and stderr responses (false: error)";}}}s:4:"name";s:32:"Hook_commandr_command_ban_member";s:7:"comment";b:1;}s:26:"Hook_commandr_command_bsod";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/bsod.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_bsod";s:7:"comment";b:1;}s:26:"Hook_commandr_command_call";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/call.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_call";s:7:"comment";b:1;}s:25:"Hook_commandr_command_cat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_commands/cat.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:25:"Hook_commandr_command_cat";s:7:"comment";b:1;}s:24:"Hook_commandr_command_cd";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/cd.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_cd";s:7:"comment";b:1;}s:33:"Hook_commandr_command_check_perms";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_commands/check_perms.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:33:"Hook_commandr_command_check_perms";s:7:"comment";b:1;}s:27:"Hook_commandr_command_clear";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/clear.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_clear";s:7:"comment";b:1;}s:34:"Hook_commandr_command_clear_caches";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/commandr_commands/clear_caches.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:34:"Hook_commandr_command_clear_caches";s:7:"comment";b:1;}s:28:"Hook_commandr_command_closed";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/closed.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:28:"Hook_commandr_command_closed";s:7:"comment";b:1;}s:34:"Hook_commandr_command_commandrchat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/commandr_commands/commandrchat.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:34:"Hook_commandr_command_commandrchat";s:7:"comment";b:1;}s:30:"Hook_commandr_command_commands";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_commands/commands.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:30:"Hook_commandr_command_commands";s:7:"comment";b:1;}s:37:"Hook_commandr_command_continue_import";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/commandr_commands/continue_import.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:37:"Hook_commandr_command_continue_import";s:7:"comment";b:1;}s:24:"Hook_commandr_command_cp";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/cp.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_cp";s:7:"comment";b:1;}s:27:"Hook_commandr_command_cpdir";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/cpdir.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_cpdir";s:7:"comment";b:1;}s:38:"Hook_commandr_command_database_upgrade";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_commands/database_upgrade.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:38:"Hook_commandr_command_database_upgrade";s:7:"comment";b:1;}s:26:"Hook_commandr_command_date";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/date.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_date";s:7:"comment";b:1;}s:31:"Hook_commandr_command_db_search";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_commands/db_search.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:31:"Hook_commandr_command_db_search";s:7:"comment";b:1;}s:15:"Hook_deep_clean";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/commandr_commands/deep_clean.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:15:"Hook_deep_clean";s:7:"comment";b:1;}s:37:"Hook_commandr_command_directory_sizes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/commandr_commands/directory_sizes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:37:"Hook_commandr_command_directory_sizes";s:7:"comment";b:1;}s:26:"Hook_commandr_command_echo";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/echo.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_echo";s:7:"comment";b:1;}s:26:"Hook_commandr_command_edit";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/edit.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_edit";s:7:"comment";b:1;}s:26:"Hook_commandr_command_exit";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/exit.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_exit";s:7:"comment";b:1;}s:34:"Hook_commandr_command_feed_display";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/commandr_commands/feed_display.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:34:"Hook_commandr_command_feed_display";s:7:"comment";b:1;}s:30:"Hook_commandr_command_feedback";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_commands/feedback.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:30:"Hook_commandr_command_feedback";s:7:"comment";b:1;}s:26:"Hook_commandr_command_find";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/find.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_find";s:7:"comment";b:1;}s:32:"Hook_commandr_command_find_codes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/commandr_commands/find_codes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:32:"Hook_commandr_command_find_codes";s:7:"comment";b:1;}s:54:"Hook_commandr_command_find_commandr_fs_filename_via_id";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_commands/find_commandr_fs_filename_via_id.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:54:"Hook_commandr_command_find_commandr_fs_filename_via_id";s:7:"comment";b:1;}s:39:"Hook_commandr_command_find_entry_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/find_entry_points.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_find_entry_points";s:7:"comment";b:1;}s:38:"Hook_commandr_command_find_guid_via_id";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_commands/find_guid_via_id.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:38:"Hook_commandr_command_find_guid_via_id";s:7:"comment";b:1;}s:54:"Hook_commandr_command_find_id_via_commandr_fs_filename";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_commands/find_id_via_commandr_fs_filename.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:54:"Hook_commandr_command_find_id_via_commandr_fs_filename";s:7:"comment";b:1;}s:38:"Hook_commandr_command_find_id_via_guid";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_commands/find_id_via_guid.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:38:"Hook_commandr_command_find_id_via_guid";s:7:"comment";b:1;}s:39:"Hook_commandr_command_find_id_via_label";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/find_id_via_label.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_find_id_via_label";s:7:"comment";b:1;}s:39:"Hook_commandr_command_find_label_via_id";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/find_label_via_id.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_find_label_via_id";s:7:"comment";b:1;}s:31:"Hook_commandr_command_fix_perms";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_commands/fix_perms.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:31:"Hook_commandr_command_fix_perms";s:7:"comment";b:1;}s:26:"Hook_commandr_command_give";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/give.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_give";s:7:"comment";b:1;}s:26:"Hook_commandr_command_grep";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/grep.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_grep";s:7:"comment";b:1;}s:26:"Hook_commandr_command_help";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/help.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_help";s:7:"comment";b:1;}s:37:"Hook_commandr_command_integrity_check";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/commandr_commands/integrity_check.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:37:"Hook_commandr_command_integrity_check";s:7:"comment";b:1;}s:24:"Hook_commandr_command_ls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/ls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_ls";s:7:"comment";b:1;}s:27:"Hook_commandr_command_mkdir";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/mkdir.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_mkdir";s:7:"comment";b:1;}s:24:"Hook_commandr_command_mv";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/mv.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_mv";s:7:"comment";b:1;}s:27:"Hook_commandr_command_mvdir";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/mvdir.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_mvdir";s:7:"comment";b:1;}s:39:"Hook_commandr_command_mysql_table_sizes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/mysql_table_sizes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_mysql_table_sizes";s:7:"comment";b:1;}s:28:"Hook_commandr_command_passwd";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/passwd.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:73:"Array of stdcommand, stdhtml, stdout, and stderr responses (false: error)";}}}s:4:"name";s:28:"Hook_commandr_command_passwd";s:7:"comment";b:1;}s:29:"Hook_commandr_command_phpinfo";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_commands/phpinfo.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:29:"Hook_commandr_command_phpinfo";s:7:"comment";b:1;}s:25:"Hook_commandr_command_pwd";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_commands/pwd.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:25:"Hook_commandr_command_pwd";s:7:"comment";b:1;}s:26:"Hook_commandr_command_read";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/read.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_read";s:7:"comment";b:1;}s:27:"Hook_commandr_command_reset";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/reset.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_reset";s:7:"comment";b:1;}s:24:"Hook_commandr_command_rm";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_commands/rm.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:24:"Hook_commandr_command_rm";s:7:"comment";b:1;}s:27:"Hook_commandr_command_rmdir";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/rmdir.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_rmdir";s:7:"comment";b:1;}s:38:"Hook_commandr_command_send_chatmessage";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_commands/send_chatmessage.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:38:"Hook_commandr_command_send_chatmessage";s:7:"comment";b:1;}s:39:"Hook_commandr_command_set_comment_forum";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_commands/set_comment_forum.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:39:"Hook_commandr_command_set_comment_forum";s:7:"comment";b:1;}s:50:"Hook_commandr_command_themewizard_compute_equation";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_commands/themewizard_compute_equation.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:50:"Hook_commandr_command_themewizard_compute_equation";s:7:"comment";b:1;}s:44:"Hook_commandr_command_themewizard_find_color";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:66:"sources/hooks/systems/commandr_commands/themewizard_find_color.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:44:"Hook_commandr_command_themewizard_find_color";s:7:"comment";b:1;}s:26:"Hook_commandr_command_time";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_commands/time.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:26:"Hook_commandr_command_time";s:7:"comment";b:1;}s:27:"Hook_commandr_command_untar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/untar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_untar";s:7:"comment";b:1;}s:34:"Hook_commandr_command_users_online";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/commandr_commands/users_online.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:34:"Hook_commandr_command_users_online";s:7:"comment";b:1;}s:29:"Hook_commandr_command_version";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_commands/version.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:29:"Hook_commandr_command_version";s:7:"comment";b:1;}s:36:"Hook_commandr_command_watch_chatroom";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_commands/watch_chatroom.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:36:"Hook_commandr_command_watch_chatroom";s:7:"comment";b:1;}s:28:"Hook_commandr_command_whoami";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_commands/whoami.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:28:"Hook_commandr_command_whoami";s:7:"comment";b:1;}s:27:"Hook_commandr_command_whois";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/whois.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_whois";s:7:"comment";b:1;}s:27:"Hook_commandr_command_write";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_commands/write.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:45:"The options with which the command was called";s:11:"phpdoc_name";s:7:"options";}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:48:"The parameters with which the command was called";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for Commandr hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"Array of stdcommand, stdhtml, stdout, and stderr responses";}}}s:4:"name";s:27:"Hook_commandr_command_write";s:7:"comment";b:1;}s:41:"Hook_commandr_fs_aggregate_type_instances";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs/aggregate_type_instances.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:41:"Hook_commandr_fs_aggregate_type_instances";s:7:"comment";b:1;}s:24:"Hook_commandr_fs_authors";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/authors.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:24:"Hook_commandr_fs_authors";s:7:"comment";b:1;}s:28:"Hook_commandr_fs_award_types";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/award_types.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:28:"Hook_commandr_fs_award_types";s:7:"comment";b:1;}s:24:"Hook_commandr_fs_banners";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/banners.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:24:"Hook_commandr_fs_banners";s:7:"comment";b:1;}s:20:"Hook_commandr_fs_bin";a:3:{s:9:"functions";a:6:{s:7:"listing";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/bin.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:20:"Hook_commandr_fs_bin";s:7:"comment";b:1;}s:25:"Hook_commandr_fs_calendar";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/calendar.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:25:"Hook_commandr_fs_calendar";s:7:"comment";b:1;}s:27:"Hook_commandr_fs_catalogues";a:3:{s:9:"functions";a:19:{s:19:"get_resources_count";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:30:"_has_parent_child_relationship";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"above";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"Folder resource type (null: root)";s:11:"phpdoc_name";s:5:"above";}i:1;a:5:{s:4:"name";s:5:"under";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"Resource type (may be file or folder)";s:11:"phpdoc_name";s:5:"under";}}s:4:"name";s:30:"_has_parent_child_relationship";s:11:"description";s:111:"Find whether a kind of resource handled by this hook (folder or file) can be under a particular kind of folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:111:"A map: The parent referencing field, the table it is in, and the ID field of that table (null: cannot be under)";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:29:"folder_convert_id_to_filename";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:29:"folder_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The filename (null: could not find)";}}s:29:"folder_convert_filename_to_id";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:29:"folder_convert_filename_to_id";s:11:"description";s:102:"Get the resource ID for a filename. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"A pair: The resource type, the resource ID";}}s:37:"__folder_read_in_properties_catalogue";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:37:"__folder_read_in_properties_catalogue";s:11:"description";s:62:"Convert properties to variables for adding/editing catalogues.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:36:"__folder_read_in_properties_category";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.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:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:4:"edit";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:10:"Is an edit";s:11:"phpdoc_name";s:4:"edit";}}s:4:"name";s:36:"__folder_read_in_properties_category";s:11:"description";s:72:"Convert properties to variables for adding/editing catalogue categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:25:"Properties (false: error)";}}s:10:"folder_add";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:20:"_find_unique_key_num";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The catalogue fields";s:11:"phpdoc_name";s:6:"fields";}}s:4:"name";s:20:"_find_unique_key_num";s:11:"description";s:49:"Find the best unique key index for the catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"The key index";}}s:25:"__file_read_in_properties";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:4:{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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Category";s:11:"phpdoc_name";s:8:"category";}i:3;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:5:"Label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:25:"__file_read_in_properties";s:11:"description";s:69:"Convert properties to variables for adding/editing catalogue entries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:8:"file_add";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:48:"sources/hooks/systems/commandr_fs/catalogues.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:27:"Hook_commandr_fs_catalogues";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_chat";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:25:"__file_read_in_properties";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:25:"__file_read_in_properties";s:11:"description";s:57:"Convert properties to variables for adding/editing rooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:8:"file_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/chat.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:21:"Hook_commandr_fs_chat";s:7:"comment";b:1;}s:30:"Hook_commandr_fs_comcode_pages";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:51:"sources/hooks/systems/commandr_fs/comcode_pages.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:30:"Hook_commandr_fs_comcode_pages";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_cpfs";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/cpfs.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:21:"Hook_commandr_fs_cpfs";s:7:"comment";b:1;}s:36:"Hook_commandr_fs_custom_comcode_tags";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:57:"sources/hooks/systems/commandr_fs/custom_comcode_tags.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:36:"Hook_commandr_fs_custom_comcode_tags";s:7:"comment";b:1;}s:25:"Hook_commandr_fs_database";a:3:{s:9:"functions";a:9:{s:7:"listing";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/database.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:8:"contents";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:41:"The new file contents (string or integer)";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:9:"_do_where";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/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:6:"string";s:11:"description";s:19:"Database table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:4:"keys";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"Key-value map ("key:value,key2:value2")";s:11:"phpdoc_name";s:4:"keys";}}s:4:"name";s:9:"_do_where";s:11:"description";s:84:"Take a provided key-value map from the path and generate a DB query WHERE map array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:57:"WHERE map array (false: if an invalid key was referenced)";}}s:11:"escape_name";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/database.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:11:"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:13:"unescape_name";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/database.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:13:"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:25:"Hook_commandr_fs_database";s:7:"comment";b:1;}s:34:"Hook_commandr_fs_download_licences";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/download_licences.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:34:"Hook_commandr_fs_download_licences";s:7:"comment";b:1;}s:26:"Hook_commandr_fs_downloads";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/downloads.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:26:"Hook_commandr_fs_downloads";s:7:"comment";b:1;}s:26:"Hook_commandr_fs_emoticons";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/emoticons.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:26:"Hook_commandr_fs_emoticons";s:7:"comment";b:1;}s:20:"Hook_commandr_fs_etc";a:3:{s:9:"functions";a:6:{s:7:"listing";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/etc.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:20:"Hook_commandr_fs_etc";s:7:"comment";b:1;}s:25:"Hook_commandr_fs_filedump";a:3:{s:9:"functions";a:8:{s:11:"__construct";a:5:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:21:"Standard constructor.";s:5:"flags";a:0:{}}s:17:"get_complete_path";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}}s:4:"name";s:17:"get_complete_path";s:11:"description";s:18:"Get complete path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:36:"A pair: Complete path, Relative path";}}s:7:"listing";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:46:"sources/hooks/systems/commandr_fs/filedump.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:25:"Hook_commandr_fs_filedump";s:7:"comment";b:1;}s:32:"Hook_commandr_fs_forum_groupings";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_fs/forum_groupings.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:32:"Hook_commandr_fs_forum_groupings";s:7:"comment";b:1;}s:23:"Hook_commandr_fs_forums";a:3:{s:9:"functions";a:18:{s:19:"get_resources_count";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:30:"_has_parent_child_relationship";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"above";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"Folder resource type (null: root)";s:11:"phpdoc_name";s:5:"above";}i:1;a:5:{s:4:"name";s:5:"under";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"Resource type (may be file or folder)";s:11:"phpdoc_name";s:5:"under";}}s:4:"name";s:30:"_has_parent_child_relationship";s:11:"description";s:111:"Find whether a kind of resource handled by this hook (folder or file) can be under a particular kind of folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:111:"A map: The parent referencing field, the table it is in, and the ID field of that table (null: cannot be under)";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"Parent category (blank: root / not applicable)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:29:"folder_convert_id_to_filename";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:29:"folder_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The filename (null: could not find)";}}s:29:"folder_convert_filename_to_id";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:29:"folder_convert_filename_to_id";s:11:"description";s:102:"Get the resource ID for a filename. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"A pair: The resource type, the resource ID";}}s:33:"__folder_read_in_properties_forum";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:33:"__folder_read_in_properties_forum";s:11:"description";s:58:"Convert properties to variables for adding/editing forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:33:"__folder_read_in_properties_topic";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.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:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:33:"__folder_read_in_properties_topic";s:11:"description";s:58:"Convert properties to variables for adding/editing topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:10:"folder_add";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.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:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:10:"force_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:50:"Resource type to try to force (null: do not force)";s:11:"phpdoc_name";s:10:"force_type";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:24:"save_ticket_associations";a:5:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}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:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:24:"save_ticket_associations";s:11:"description";s:25:"Save ticket associations.";s:5:"flags";a:0:{}}s:11:"folder_load";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:8:"file_add";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/forums.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:23:"Hook_commandr_fs_forums";s:7:"comment";b:1;}s:26:"Hook_commandr_fs_galleries";a:3:{s:9:"functions";a:13:{s:19:"get_resources_count";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:27:"file_convert_id_to_filename";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:27:"file_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The filename";}}s:27:"file_convert_filename_to_id";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:27:"file_convert_filename_to_id";s:11:"description";s:112:"Get the resource ID for a filename (of file). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:65:"A pair: The resource type, the resource ID (null: could not find)";}}s:8:"file_add";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.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:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:10:"force_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:50:"Resource type to try to force (null: do not force)";s:11:"phpdoc_name";s:10:"force_type";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:47:"sources/hooks/systems/commandr_fs/galleries.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:26:"Hook_commandr_fs_galleries";s:7:"comment";b:1;}s:23:"Hook_commandr_fs_groups";a:3:{s:9:"functions";a:15:{s:19:"get_resources_count";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:"_get_folder_edit_date";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:27:"__folder_read_in_properties";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.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:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:4:"edit";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:10:"Is an edit";s:11:"phpdoc_name";s:4:"edit";}}s:4:"name";s:27:"__folder_read_in_properties";s:11:"description";s:59:"Convert properties to variables for adding/editing members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:10:"folder_add";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:25:"__file_read_in_properties";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.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:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:4:"edit";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:10:"Is an edit";s:11:"phpdoc_name";s:4:"edit";}}s:4:"name";s:25:"__file_read_in_properties";s:11:"description";s:59:"Convert properties to variables for adding/editing members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";}}s:8:"file_add";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:44:"sources/hooks/systems/commandr_fs/groups.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:23:"Hook_commandr_fs_groups";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_home";a:3:{s:9:"functions";a:6:{s:7:"listing";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/home.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:21:"Hook_commandr_fs_home";s:7:"comment";b:1;}s:24:"Hook_commandr_fs_members";a:3:{s:9:"functions";a:7:{s:7:"listing";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:16:"get_field_id_for";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/members.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:9:"file_name";}i:1;a:7:{s:4:"name";s:10:"missing_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:27:"If the field may be missing";s:11:"phpdoc_name";s:10:"missing_ok";}}s:4:"name";s:16:"get_field_id_for";s:11:"description";s:42:"Get the field ID of a CPF from a filename.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"CPF ID";}}}s:4:"name";s:24:"Hook_commandr_fs_members";s:7:"comment";b:1;}s:22:"Hook_commandr_fs_menus";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/menus.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:22:"Hook_commandr_fs_menus";s:7:"comment";b:1;}s:34:"Hook_commandr_fs_multi_moderations";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:55:"sources/hooks/systems/commandr_fs/multi_moderations.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:34:"Hook_commandr_fs_multi_moderations";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_news";a:3:{s:9:"functions";a:12:{s:19:"get_resources_count";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:21:"_get_folder_edit_date";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:21:"_get_folder_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:10:"folder_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/news.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:21:"Hook_commandr_fs_news";s:7:"comment";b:1;}s:39:"Hook_commandr_fs_newsletter_subscribers";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:60:"sources/hooks/systems/commandr_fs/newsletter_subscribers.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:39:"Hook_commandr_fs_newsletter_subscribers";s:7:"comment";b:1;}s:28:"Hook_commandr_fs_newsletters";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:49:"sources/hooks/systems/commandr_fs/newsletters.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:28:"Hook_commandr_fs_newsletters";s:7:"comment";b:1;}s:37:"Hook_commandr_fs_periodic_newsletters";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:58:"sources/hooks/systems/commandr_fs/periodic_newsletters.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:37:"Hook_commandr_fs_periodic_newsletters";s:7:"comment";b:1;}s:22:"Hook_commandr_fs_polls";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:43:"sources/hooks/systems/commandr_fs/polls.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:22:"Hook_commandr_fs_polls";s:7:"comment";b:1;}s:31:"Hook_commandr_fs_post_templates";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/post_templates.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:31:"Hook_commandr_fs_post_templates";s:7:"comment";b:1;}s:24:"Hook_commandr_fs_quizzes";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:16:"add_quiz_entries";a:5:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:7:"quiz_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"The quiz";s:11:"phpdoc_name";s:7:"quiz_id";}}s:4:"name";s:16:"add_quiz_entries";s:11:"description";s:36:"Custom import code for quiz entries.";s:5:"flags";a:0:{}}s:9:"file_load";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:45:"sources/hooks/systems/commandr_fs/quizzes.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:24:"Hook_commandr_fs_quizzes";s:7:"comment";b:1;}s:20:"Hook_commandr_fs_raw";a:3:{s:9:"functions";a:6:{s:7:"listing";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:41:"sources/hooks/systems/commandr_fs/raw.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:20:"Hook_commandr_fs_raw";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_root";a:3:{s:9:"functions";a:7:{s:7:"listing";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:20:"_customise_directory";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/root.php";s:10:"parameters";a:2:{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:17:"Path to customise";s:11:"phpdoc_name";s:9:"directory";}i:1;a:7:{s:4:"name";s:18:"change_to_override";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to rewrite to be the alternative override directory";s:11:"phpdoc_name";s:18:"change_to_override";}}s:4:"name";s:20:"_customise_directory";s:11:"description";s:66:"Customise a directory path, adding _custom to appropriate entries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Customised path";}}}s:4:"name";s:21:"Hook_commandr_fs_root";s:7:"comment";b:1;}s:29:"Hook_commandr_fs_ticket_types";a:3:{s:9:"functions";a:7:{s:19:"get_resources_count";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:19:"_get_file_edit_date";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:50:"sources/hooks/systems/commandr_fs/ticket_types.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:29:"Hook_commandr_fs_ticket_types";s:7:"comment";b:1;}s:40:"Hook_commandr_fs_usergroup_subscriptions";a:3:{s:9:"functions";a:8:{s:19:"get_resources_count";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"_is_active";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"_get_file_edit_date";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.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:"Resource row (not full, but does contain the ID)";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:19:"_get_file_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:8:"file_add";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_fs/usergroup_subscriptions.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:40:"Hook_commandr_fs_usergroup_subscriptions";s:7:"comment";b:1;}s:31:"Hook_commandr_fs_welcome_emails";a:3:{s:9:"functions";a:6:{s:19:"get_resources_count";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:8:"file_add";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:52:"sources/hooks/systems/commandr_fs/welcome_emails.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:31:"Hook_commandr_fs_welcome_emails";s:7:"comment";b:1;}s:21:"Hook_commandr_fs_wiki";a:3:{s:9:"functions";a:10:{s:19:"get_resources_count";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:19:"get_resources_count";s:11:"description";s:117:"Standard Commandr-fs function for seeing how many resources are. Useful for determining whether to do a full rebuild.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"How many resources there are";}}s:22:"find_resource_by_label";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:22:"find_resource_by_label";s:11:"description";s:68:"Standard Commandr-fs function for searching for a resource by label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A list of resource IDs";}}s:10:"folder_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:10:"folder_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:30:"The resource ID (false: error)";}}s:11:"folder_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"folder_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:11:"folder_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:13:"explicit_move";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Whether we are definitely moving (as opposed to possible having it in multiple positions)";s:11:"phpdoc_name";s:13:"explicit_move";}}s:4:"name";s:11:"folder_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"folder_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"folder_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:8:"file_add";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:8:"file_add";s:11:"description";s:112:"Standard Commandr-fs add function for resource-fs hooks. Adds some resource with the given label and properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_load";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:215:"The path (blank: root / not applicable). It may be a wildcarded path, as the path is used for content-type identification only. Filenames are globally unique across a hook; you can calculate the path using ->search.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:9:"file_load";s:11:"description";s:97:"Standard Commandr-fs load function for resource-fs hooks. Finds the properties for some resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:9:"file_edit";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:3:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:9:"file_edit";s:11:"description";s:101:"Standard Commandr-fs edit function for resource-fs hooks. Edits the resource to the given properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"file_delete";a:6:{s:8:"filename";s:42:"sources/hooks/systems/commandr_fs/wiki.php";s:10:"parameters";a:2:{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:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"file_delete";s:11:"description";s:81:"Standard Commandr-fs delete function for resource-fs hooks. Deletes the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}}s:4:"name";s:21:"Hook_commandr_fs_wiki";s:7:"comment";b:1;}s:49:"Hook_commandr_fs_extended_config__checklist_tasks";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:69:"sources/hooks/systems/commandr_fs_extended_config/checklist_tasks.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:69:"sources/hooks/systems/commandr_fs_extended_config/checklist_tasks.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:69:"sources/hooks/systems/commandr_fs_extended_config/checklist_tasks.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:49:"Hook_commandr_fs_extended_config__checklist_tasks";s:7:"comment";b:1;}s:48:"Hook_commandr_fs_extended_config__https_settings";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_config/https_settings.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_config/https_settings.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:68:"sources/hooks/systems/commandr_fs_extended_config/https_settings.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:48:"Hook_commandr_fs_extended_config__https_settings";s:7:"comment";b:1;}s:43:"Hook_commandr_fs_extended_config__ip_banned";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_config/ip_banned.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_config/ip_banned.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:63:"sources/hooks/systems/commandr_fs_extended_config/ip_banned.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:43:"Hook_commandr_fs_extended_config__ip_banned";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_config__ip_unbannable";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_config/ip_unbannable.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_config/ip_unbannable.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:67:"sources/hooks/systems/commandr_fs_extended_config/ip_unbannable.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:47:"Hook_commandr_fs_extended_config__ip_unbannable";s:7:"comment";b:1;}s:52:"Hook_commandr_fs_extended_config__match_key_messages";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_config/match_key_messages.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_config/match_key_messages.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:72:"sources/hooks/systems/commandr_fs_extended_config/match_key_messages.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:52:"Hook_commandr_fs_extended_config__match_key_messages";s:7:"comment";b:1;}s:55:"Hook_commandr_fs_extended_config__notification_lockdown";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_config/notification_lockdown.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_config/notification_lockdown.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:75:"sources/hooks/systems/commandr_fs_extended_config/notification_lockdown.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:55:"Hook_commandr_fs_extended_config__notification_lockdown";s:7:"comment";b:1;}s:44:"Hook_commandr_fs_extended_config__privileges";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:64:"sources/hooks/systems/commandr_fs_extended_config/privileges.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:64:"sources/hooks/systems/commandr_fs_extended_config/privileges.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:64:"sources/hooks/systems/commandr_fs_extended_config/privileges.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:44:"Hook_commandr_fs_extended_config__privileges";s:7:"comment";b:1;}s:48:"Hook_commandr_fs_extended_config__pstore_customs";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_config/pstore_customs.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_config/pstore_customs.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:68:"sources/hooks/systems/commandr_fs_extended_config/pstore_customs.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:48:"Hook_commandr_fs_extended_config__pstore_customs";s:7:"comment";b:1;}s:52:"Hook_commandr_fs_extended_config__pstore_permissions";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_config/pstore_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_config/pstore_permissions.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:72:"sources/hooks/systems/commandr_fs_extended_config/pstore_permissions.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:52:"Hook_commandr_fs_extended_config__pstore_permissions";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_config__pstore_prices";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_config/pstore_prices.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_config/pstore_prices.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:67:"sources/hooks/systems/commandr_fs_extended_config/pstore_prices.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:47:"Hook_commandr_fs_extended_config__pstore_prices";s:7:"comment";b:1;}s:43:"Hook_commandr_fs_extended_config__redirects";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_config/redirects.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_config/redirects.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:63:"sources/hooks/systems/commandr_fs_extended_config/redirects.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:43:"Hook_commandr_fs_extended_config__redirects";s:7:"comment";b:1;}s:45:"Hook_commandr_fs_extended_config__staff_links";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:65:"sources/hooks/systems/commandr_fs_extended_config/staff_links.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:65:"sources/hooks/systems/commandr_fs_extended_config/staff_links.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:65:"sources/hooks/systems/commandr_fs_extended_config/staff_links.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:45:"Hook_commandr_fs_extended_config__staff_links";s:7:"comment";b:1;}s:56:"Hook_commandr_fs_extended_config__staff_monitoring_sites";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_fs_extended_config/staff_monitoring_sites.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_fs_extended_config/staff_monitoring_sites.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:76:"sources/hooks/systems/commandr_fs_extended_config/staff_monitoring_sites.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:56:"Hook_commandr_fs_extended_config__staff_monitoring_sites";s:7:"comment";b:1;}s:44:"Hook_commandr_fs_extended_config__wordfilter";a:3:{s:9:"functions";a:3:{s:13:"get_edit_date";a:6:{s:8:"filename";s:64:"sources/hooks/systems/commandr_fs_extended_config/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_edit_date";s:11:"description";s:110:"Standard Commandr-fs date fetch function for resource-fs hooks. Defined when getting an edit date is not easy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:73:"The edit date or add date, whichever is higher (null: could not find one)";}}s:9:"read_file";a:6:{s:8:"filename";s:64:"sources/hooks/systems/commandr_fs_extended_config/wordfilter.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for commandr_fs hooks.";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:64:"sources/hooks/systems/commandr_fs_extended_config/wordfilter.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for commandr_fs hooks.";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:44:"Hook_commandr_fs_extended_config__wordfilter";s:7:"comment";b:1;}s:56:"Hook_commandr_fs_extended_member__banned_from_submitting";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:76:"sources/hooks/systems/commandr_fs_extended_member/banned_from_submitting.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:76:"sources/hooks/systems/commandr_fs_extended_member/banned_from_submitting.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:56:"Hook_commandr_fs_extended_member__banned_from_submitting";s:7:"comment";b:1;}s:43:"Hook_commandr_fs_extended_member__bookmarks";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_member/bookmarks.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_member/bookmarks.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:43:"Hook_commandr_fs_extended_member__bookmarks";s:7:"comment";b:1;}s:52:"Hook_commandr_fs_extended_member__calendar_interests";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_member/calendar_interests.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_member/calendar_interests.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:52:"Hook_commandr_fs_extended_member__calendar_interests";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_member__chat_blocking";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/chat_blocking.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/chat_blocking.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:47:"Hook_commandr_fs_extended_member__chat_blocking";s:7:"comment";b:1;}s:46:"Hook_commandr_fs_extended_member__chat_friends";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:66:"sources/hooks/systems/commandr_fs_extended_member/chat_friends.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:66:"sources/hooks/systems/commandr_fs_extended_member/chat_friends.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:46:"Hook_commandr_fs_extended_member__chat_friends";s:7:"comment";b:1;}s:52:"Hook_commandr_fs_extended_member__chat_sound_effects";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_member/chat_sound_effects.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:72:"sources/hooks/systems/commandr_fs_extended_member/chat_sound_effects.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:52:"Hook_commandr_fs_extended_member__chat_sound_effects";s:7:"comment";b:1;}s:43:"Hook_commandr_fs_extended_member__cpf_perms";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_member/cpf_perms.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:63:"sources/hooks/systems/commandr_fs_extended_member/cpf_perms.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:43:"Hook_commandr_fs_extended_member__cpf_perms";s:7:"comment";b:1;}s:48:"Hook_commandr_fs_extended_member__group_timeouts";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_member/group_timeouts.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_member/group_timeouts.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:48:"Hook_commandr_fs_extended_member__group_timeouts";s:7:"comment";b:1;}s:42:"Hook_commandr_fs_extended_member__invoices";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs_extended_member/invoices.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs_extended_member/invoices.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:42:"Hook_commandr_fs_extended_member__invoices";s:7:"comment";b:1;}s:49:"Hook_commandr_fs_extended_member__known_login_ips";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:69:"sources/hooks/systems/commandr_fs_extended_member/known_login_ips.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:69:"sources/hooks/systems/commandr_fs_extended_member/known_login_ips.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:49:"Hook_commandr_fs_extended_member__known_login_ips";s:7:"comment";b:1;}s:55:"Hook_commandr_fs_extended_member__notifications_enabled";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_member/notifications_enabled.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_member/notifications_enabled.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:55:"Hook_commandr_fs_extended_member__notifications_enabled";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_member__point_charges";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/point_charges.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/point_charges.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:47:"Hook_commandr_fs_extended_member__point_charges";s:7:"comment";b:1;}s:51:"Hook_commandr_fs_extended_member__point_gifts_given";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:71:"sources/hooks/systems/commandr_fs_extended_member/point_gifts_given.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:71:"sources/hooks/systems/commandr_fs_extended_member/point_gifts_given.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:51:"Hook_commandr_fs_extended_member__point_gifts_given";s:7:"comment";b:1;}s:48:"Hook_commandr_fs_extended_member__searches_saved";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_member/searches_saved.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:68:"sources/hooks/systems/commandr_fs_extended_member/searches_saved.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:48:"Hook_commandr_fs_extended_member__searches_saved";s:7:"comment";b:1;}s:47:"Hook_commandr_fs_extended_member__subscriptions";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/subscriptions.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:67:"sources/hooks/systems/commandr_fs_extended_member/subscriptions.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:47:"Hook_commandr_fs_extended_member__subscriptions";s:7:"comment";b:1;}s:55:"Hook_commandr_fs_extended_member__ticket_known_emailers";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_member/ticket_known_emailers.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:75:"sources/hooks/systems/commandr_fs_extended_member/ticket_known_emailers.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:55:"Hook_commandr_fs_extended_member__ticket_known_emailers";s:7:"comment";b:1;}s:42:"Hook_commandr_fs_extended_member__warnings";a:3:{s:9:"functions";a:2:{s:13:"read_property";a:6:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs_extended_member/warnings.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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"read_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";}}s:14:"write_property";a:5:{s:8:"filename";s:62:"sources/hooks/systems/commandr_fs_extended_member/warnings.php";s:10:"parameters";a:2:{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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"write_property";s:11:"description";s:42:"Read a virtual property for a member file.";s:5:"flags";a:0:{}}}s:4:"name";s:42:"Hook_commandr_fs_extended_member__warnings";s:7:"comment";b:1;}s:31:"Hook_commandr_notification_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/commandr_notifications/chat.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"timestamp";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 "current" time on which to base queries (null: now)";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:3:"run";s:11:"description";s:45:"Run function for Commandr notification hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:61:"Array of section, type and message responses (false: nothing)";}}}s:4:"name";s:31:"Hook_commandr_notification_chat";s:7:"comment";b:1;}s:39:"Hook_commandr_notification_commandrchat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/commandr_notifications/commandrchat.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"timestamp";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 "current" time on which to base queries (null: now)";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:3:"run";s:11:"description";s:45:"Run function for Commandr notification hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:61:"Array of section, type and message responses (false: nothing)";}}}s:4:"name";s:39:"Hook_commandr_notification_commandrchat";s:7:"comment";b:1;}s:59:"Hook_config_activity_show_stats_count_page_views_this_month";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:80:"sources/hooks/systems/config/activity_show_stats_count_page_views_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:80:"sources/hooks/systems/config/activity_show_stats_count_page_views_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:59:"Hook_config_activity_show_stats_count_page_views_this_month";s:7:"comment";b:1;}s:58:"Hook_config_activity_show_stats_count_page_views_this_week";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:79:"sources/hooks/systems/config/activity_show_stats_count_page_views_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:79:"sources/hooks/systems/config/activity_show_stats_count_page_views_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:58:"Hook_config_activity_show_stats_count_page_views_this_week";s:7:"comment";b:1;}s:54:"Hook_config_activity_show_stats_count_page_views_today";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/activity_show_stats_count_page_views_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/activity_show_stats_count_page_views_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:54:"Hook_config_activity_show_stats_count_page_views_today";s:7:"comment";b:1;}s:50:"Hook_config_activity_show_stats_count_users_online";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/activity_show_stats_count_users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/activity_show_stats_count_users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:50:"Hook_config_activity_show_stats_count_users_online";s:7:"comment";b:1;}s:56:"Hook_config_activity_show_stats_count_users_online_forum";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:77:"sources/hooks/systems/config/activity_show_stats_count_users_online_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:77:"sources/hooks/systems/config/activity_show_stats_count_users_online_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:56:"Hook_config_activity_show_stats_count_users_online_forum";s:7:"comment";b:1;}s:57:"Hook_config_activity_show_stats_count_users_online_record";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:78:"sources/hooks/systems/config/activity_show_stats_count_users_online_record.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:78:"sources/hooks/systems/config/activity_show_stats_count_users_online_record.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:57:"Hook_config_activity_show_stats_count_users_online_record";s:7:"comment";b:1;}s:25:"Hook_config_admin_banners";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/admin_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/admin_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_admin_banners";s:7:"comment";b:1;}s:30:"Hook_config_allow_alpha_search";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/allow_alpha_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/allow_alpha_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_allow_alpha_search";s:7:"comment";b:1;}s:30:"Hook_config_allow_audio_videos";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/allow_audio_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/allow_audio_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_allow_audio_videos";s:7:"comment";b:1;}s:36:"Hook_config_allow_auto_notifications";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/allow_auto_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/allow_auto_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_allow_auto_notifications";s:7:"comment";b:1;}s:31:"Hook_config_allow_email_disable";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/allow_email_disable.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/allow_email_disable.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_allow_email_disable";s:7:"comment";b:1;}s:42:"Hook_config_allow_email_from_staff_disable";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/allow_email_from_staff_disable.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/allow_email_from_staff_disable.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:42:"Hook_config_allow_email_from_staff_disable";s:7:"comment";b:1;}s:28:"Hook_config_allow_ext_images";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/allow_ext_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/allow_ext_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_allow_ext_images";s:7:"comment";b:1;}s:31:"Hook_config_allow_international";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/allow_international.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/allow_international.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_allow_international";s:7:"comment";b:1;}s:35:"Hook_config_allow_opting_out_of_tax";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/allow_opting_out_of_tax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/allow_opting_out_of_tax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_allow_opting_out_of_tax";s:7:"comment";b:1;}s:26:"Hook_config_allow_own_rate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/allow_own_rate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/allow_own_rate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_allow_own_rate";s:7:"comment";b:1;}s:38:"Hook_config_allow_theme_image_selector";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/allow_theme_image_selector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/allow_theme_image_selector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_allow_theme_image_selector";s:7:"comment";b:1;}s:35:"Hook_config_allowed_post_submitters";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/allowed_post_submitters.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/allowed_post_submitters.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_allowed_post_submitters";s:7:"comment";b:1;}s:22:"Hook_config_anti_leech";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/anti_leech.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/anti_leech.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_anti_leech";s:7:"comment";b:1;}s:30:"Hook_config_attachment_cleanup";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/attachment_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/attachment_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_attachment_cleanup";s:7:"comment";b:1;}s:37:"Hook_config_attachment_default_height";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/attachment_default_height.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/attachment_default_height.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_attachment_default_height";s:7:"comment";b:1;}s:36:"Hook_config_attachment_default_width";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/attachment_default_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/attachment_default_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_attachment_default_width";s:7:"comment";b:1;}s:25:"Hook_config_audio_bitrate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/audio_bitrate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/audio_bitrate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_audio_bitrate";s:7:"comment";b:1;}s:25:"Hook_config_audio_captcha";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/audio_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/audio_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_audio_captcha";s:7:"comment";b:1;}s:31:"Hook_config_auto_submit_sitemap";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/auto_submit_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/auto_submit_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_auto_submit_sitemap";s:7:"comment";b:1;}s:19:"Hook_config_autoban";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/autoban.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/autoban.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:19:"Hook_config_autoban";s:7:"comment";b:1;}s:20:"Hook_config_autogrow";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/autogrow.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/autogrow.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_autogrow";s:7:"comment";b:1;}s:37:"Hook_config_automatic_meta_extraction";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/automatic_meta_extraction.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/automatic_meta_extraction.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_automatic_meta_extraction";s:7:"comment";b:1;}s:37:"Hook_config_average_gamble_multiplier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/average_gamble_multiplier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/average_gamble_multiplier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_average_gamble_multiplier";s:7:"comment";b:1;}s:34:"Hook_config_awarded_items_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/awarded_items_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/awarded_items_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_awarded_items_per_page";s:7:"comment";b:1;}s:28:"Hook_config_backup_overwrite";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/backup_overwrite.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/backup_overwrite.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_backup_overwrite";s:7:"comment";b:1;}s:34:"Hook_config_backup_server_hostname";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/backup_server_hostname.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/backup_server_hostname.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_backup_server_hostname";s:7:"comment";b:1;}s:34:"Hook_config_backup_server_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/backup_server_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/backup_server_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_backup_server_password";s:7:"comment";b:1;}s:30:"Hook_config_backup_server_path";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_backup_server_path";s:7:"comment";b:1;}s:30:"Hook_config_backup_server_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_backup_server_port";s:7:"comment";b:1;}s:30:"Hook_config_backup_server_user";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/backup_server_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_backup_server_user";s:7:"comment";b:1;}s:23:"Hook_config_backup_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/backup_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/backup_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_backup_time";s:7:"comment";b:1;}s:27:"Hook_config_banner_autosize";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/banner_autosize.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/banner_autosize.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_banner_autosize";s:7:"comment";b:1;}s:22:"Hook_config_banner_hit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/banner_hit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/banner_hit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_banner_hit";s:7:"comment";b:1;}s:22:"Hook_config_banner_imp";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/banner_imp.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/banner_imp.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_banner_imp";s:7:"comment";b:1;}s:24:"Hook_config_banner_setup";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/banner_setup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/banner_setup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_banner_setup";s:7:"comment";b:1;}s:15:"Hook_config_bcc";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/bcc.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/bcc.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:15:"Hook_config_bcc";s:7:"comment";b:1;}s:27:"Hook_config_block_top_login";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/block_top_login.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/block_top_login.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_block_top_login";s:7:"comment";b:1;}s:35:"Hook_config_block_top_notifications";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/block_top_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/block_top_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_block_top_notifications";s:7:"comment";b:1;}s:36:"Hook_config_block_top_personal_stats";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/block_top_personal_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/block_top_personal_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_block_top_personal_stats";s:7:"comment";b:1;}s:28:"Hook_config_block_top_search";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/block_top_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/block_top_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_block_top_search";s:7:"comment";b:1;}s:28:"Hook_config_blog_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/blog_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/blog_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_blog_update_time";s:7:"comment";b:1;}s:21:"Hook_config_bot_stats";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/bot_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/bot_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_bot_stats";s:7:"comment";b:1;}s:39:"Hook_config_bottom_show_commandr_button";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/bottom_show_commandr_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/bottom_show_commandr_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_bottom_show_commandr_button";s:7:"comment";b:1;}s:37:"Hook_config_bottom_show_feedback_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/bottom_show_feedback_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/bottom_show_feedback_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_bottom_show_feedback_link";s:7:"comment";b:1;}s:36:"Hook_config_bottom_show_privacy_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/bottom_show_privacy_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/bottom_show_privacy_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_bottom_show_privacy_link";s:7:"comment";b:1;}s:44:"Hook_config_bottom_show_realtime_rain_button";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/bottom_show_realtime_rain_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/bottom_show_realtime_rain_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_bottom_show_realtime_rain_button";s:7:"comment";b:1;}s:34:"Hook_config_bottom_show_rules_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/bottom_show_rules_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/bottom_show_rules_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_bottom_show_rules_link";s:7:"comment";b:1;}s:38:"Hook_config_bottom_show_sitemap_button";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/bottom_show_sitemap_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/bottom_show_sitemap_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_bottom_show_sitemap_button";s:7:"comment";b:1;}s:34:"Hook_config_bottom_show_top_button";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/bottom_show_top_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/bottom_show_top_button.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_bottom_show_top_button";s:7:"comment";b:1;}s:34:"Hook_config_breadcrumb_crop_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/breadcrumb_crop_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/breadcrumb_crop_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_breadcrumb_crop_length";s:7:"comment";b:1;}s:35:"Hook_config_brute_force_instant_ban";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/brute_force_instant_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/brute_force_instant_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_brute_force_instant_ban";s:7:"comment";b:1;}s:37:"Hook_config_brute_force_login_minutes";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/brute_force_login_minutes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/brute_force_login_minutes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_brute_force_login_minutes";s:7:"comment";b:1;}s:33:"Hook_config_brute_force_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/brute_force_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/brute_force_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_brute_force_threshold";s:7:"comment";b:1;}s:44:"Hook_config_calendar_show_stats_count_events";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/calendar_show_stats_count_events.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/calendar_show_stats_count_events.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_calendar_show_stats_count_events";s:7:"comment";b:1;}s:55:"Hook_config_calendar_show_stats_count_events_this_month";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/calendar_show_stats_count_events_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/calendar_show_stats_count_events_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:55:"Hook_config_calendar_show_stats_count_events_this_month";s:7:"comment";b:1;}s:54:"Hook_config_calendar_show_stats_count_events_this_week";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/calendar_show_stats_count_events_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/calendar_show_stats_count_events_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:54:"Hook_config_calendar_show_stats_count_events_this_week";s:7:"comment";b:1;}s:54:"Hook_config_calendar_show_stats_count_events_this_year";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/calendar_show_stats_count_events_this_year.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:75:"sources/hooks/systems/config/calendar_show_stats_count_events_this_year.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:54:"Hook_config_calendar_show_stats_count_events_this_year";s:7:"comment";b:1;}s:21:"Hook_config_call_home";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/call_home.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/call_home.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_call_home";s:7:"comment";b:1;}s:29:"Hook_config_callback_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/callback_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/callback_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_callback_password";s:7:"comment";b:1;}s:25:"Hook_config_captcha_noise";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/captcha_noise.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/captcha_noise.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_captcha_noise";s:7:"comment";b:1;}s:31:"Hook_config_captcha_on_feedback";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/captcha_on_feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/captcha_on_feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_captcha_on_feedback";s:7:"comment";b:1;}s:32:"Hook_config_captcha_single_guess";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/captcha_single_guess.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/captcha_single_guess.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_captcha_single_guess";s:7:"comment";b:1;}s:27:"Hook_config_cart_hold_hours";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cart_hold_hours.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cart_hold_hours.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_cart_hold_hours";s:7:"comment";b:1;}s:38:"Hook_config_catalogue_entries_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogue_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogue_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_catalogue_entries_per_page";s:7:"comment";b:1;}s:38:"Hook_config_catalogue_subcats_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogue_subcats_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogue_subcats_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_catalogue_subcats_per_page";s:7:"comment";b:1;}s:38:"Hook_config_catalogues_subcat_narrowin";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogues_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/catalogues_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_catalogues_subcat_narrowin";s:7:"comment";b:1;}s:22:"Hook_config_cc_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/cc_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/cc_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_cc_address";s:7:"comment";b:1;}s:15:"Hook_config_cdn";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/cdn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/cdn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:15:"Hook_config_cdn";s:7:"comment";b:1;}s:36:"Hook_config_chat_default_post_colour";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/chat_default_post_colour.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/chat_default_post_colour.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_chat_default_post_colour";s:7:"comment";b:1;}s:34:"Hook_config_chat_default_post_font";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/chat_default_post_font.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/chat_default_post_font.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_chat_default_post_font";s:7:"comment";b:1;}s:32:"Hook_config_chat_flood_timelimit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/chat_flood_timelimit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/chat_flood_timelimit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_chat_flood_timelimit";s:7:"comment";b:1;}s:37:"Hook_config_chat_max_messages_to_show";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/chat_max_messages_to_show.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/chat_max_messages_to_show.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_chat_max_messages_to_show";s:7:"comment";b:1;}s:39:"Hook_config_chat_message_check_interval";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_message_check_interval.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_message_check_interval.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_chat_message_check_interval";s:7:"comment";b:1;}s:43:"Hook_config_chat_private_room_deletion_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/chat_private_room_deletion_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/chat_private_room_deletion_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_chat_private_room_deletion_time";s:7:"comment";b:1;}s:42:"Hook_config_chat_show_stats_count_messages";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/chat_show_stats_count_messages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/chat_show_stats_count_messages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:42:"Hook_config_chat_show_stats_count_messages";s:7:"comment";b:1;}s:39:"Hook_config_chat_show_stats_count_rooms";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_show_stats_count_rooms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_show_stats_count_rooms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_chat_show_stats_count_rooms";s:7:"comment";b:1;}s:39:"Hook_config_chat_show_stats_count_users";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_show_stats_count_users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/chat_show_stats_count_users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_chat_show_stats_count_users";s:7:"comment";b:1;}s:38:"Hook_config_chat_transitory_alert_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/chat_transitory_alert_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/chat_transitory_alert_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_chat_transitory_alert_time";s:7:"comment";b:1;}s:29:"Hook_config_check_broken_urls";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/check_broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/check_broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_check_broken_urls";s:7:"comment";b:1;}s:25:"Hook_config_cleanup_files";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/cleanup_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/cleanup_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_cleanup_files";s:7:"comment";b:1;}s:18:"Hook_config_closed";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:39:"sources/hooks/systems/config/closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:39:"sources/hooks/systems/config/closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:18:"Hook_config_closed";s:7:"comment";b:1;}s:35:"Hook_config_club_forum_parent_forum";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/club_forum_parent_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/club_forum_parent_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_club_forum_parent_forum";s:7:"comment";b:1;}s:44:"Hook_config_club_forum_parent_forum_grouping";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/club_forum_parent_forum_grouping.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/club_forum_parent_forum_grouping.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_club_forum_parent_forum_grouping";s:7:"comment";b:1;}s:33:"Hook_config_cns_show_profile_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/cns_show_profile_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/cns_show_profile_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_cns_show_profile_link";s:7:"comment";b:1;}s:31:"Hook_config_collapse_user_zones";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/collapse_user_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/collapse_user_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_collapse_user_zones";s:7:"comment";b:1;}s:44:"Hook_config_comcode_page_default_review_freq";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/comcode_page_default_review_freq.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/comcode_page_default_review_freq.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_comcode_page_default_review_freq";s:7:"comment";b:1;}s:34:"Hook_config_commandr_chat_announce";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/commandr_chat_announce.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/commandr_chat_announce.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_commandr_chat_announce";s:7:"comment";b:1;}s:24:"Hook_config_comment_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/comment_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/comment_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_comment_text";s:7:"comment";b:1;}s:33:"Hook_config_comment_topic_subject";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/comment_topic_subject.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/comment_topic_subject.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_comment_topic_subject";s:7:"comment";b:1;}s:31:"Hook_config_comments_forum_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/comments_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/comments_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_comments_forum_name";s:7:"comment";b:1;}s:38:"Hook_config_comments_to_show_in_thread";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/comments_to_show_in_thread.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/comments_to_show_in_thread.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_comments_to_show_in_thread";s:7:"comment";b:1;}s:25:"Hook_config_complex_lists";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/complex_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/complex_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_complex_lists";s:7:"comment";b:1;}s:35:"Hook_config_complex_privacy_options";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/complex_privacy_options.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/complex_privacy_options.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_complex_privacy_options";s:7:"comment";b:1;}s:28:"Hook_config_complex_uploader";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/complex_uploader.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/complex_uploader.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_complex_uploader";s:7:"comment";b:1;}s:25:"Hook_config_cookie_notice";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/cookie_notice.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/cookie_notice.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_cookie_notice";s:7:"comment";b:1;}s:21:"Hook_config_copyright";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/copyright.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/copyright.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_copyright";s:7:"comment";b:1;}s:27:"Hook_config_cpf_enable_city";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cpf_enable_city.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cpf_enable_city.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_cpf_enable_city";s:7:"comment";b:1;}s:30:"Hook_config_cpf_enable_country";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/cpf_enable_country.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/cpf_enable_country.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_cpf_enable_country";s:7:"comment";b:1;}s:29:"Hook_config_cpf_enable_county";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/cpf_enable_county.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/cpf_enable_county.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_cpf_enable_county";s:7:"comment";b:1;}s:27:"Hook_config_cpf_enable_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cpf_enable_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/cpf_enable_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_cpf_enable_name";s:7:"comment";b:1;}s:28:"Hook_config_cpf_enable_phone";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/cpf_enable_phone.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/cpf_enable_phone.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_cpf_enable_phone";s:7:"comment";b:1;}s:32:"Hook_config_cpf_enable_post_code";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/cpf_enable_post_code.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/cpf_enable_post_code.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_cpf_enable_post_code";s:7:"comment";b:1;}s:28:"Hook_config_cpf_enable_state";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/cpf_enable_state.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/cpf_enable_state.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_cpf_enable_state";s:7:"comment";b:1;}s:37:"Hook_config_cpf_enable_street_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/cpf_enable_street_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/cpf_enable_street_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_cpf_enable_street_address";s:7:"comment";b:1;}s:25:"Hook_config_crypt_ratchet";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/crypt_ratchet.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/crypt_ratchet.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_crypt_ratchet";s:7:"comment";b:1;}s:35:"Hook_config_csrf_token_expire_fresh";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/csrf_token_expire_fresh.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/csrf_token_expire_fresh.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_csrf_token_expire_fresh";s:7:"comment";b:1;}s:33:"Hook_config_csrf_token_expire_new";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/csrf_token_expire_new.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/csrf_token_expire_new.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_csrf_token_expire_new";s:7:"comment";b:1;}s:23:"Hook_config_css_captcha";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/css_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/css_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_css_captcha";s:7:"comment";b:1;}s:20:"Hook_config_currency";a:3:{s:9:"functions";a:3:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/currency.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/currency.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}s:14:"field_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/currency.php";s:10:"parameters";a:4:{i:0;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 config option name";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"myrow";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The config row";s:11:"phpdoc_name";s:5:"myrow";}i:2;a:5:{s:4:"name";s:10:"human_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The field title";s:11:"phpdoc_name";s:10:"human_name";}i:3;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:11:"explanation";}}s:4:"name";s:14:"field_inputter";s:11:"description";s:42:"Field inputter (because the_type=special).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The inputter";}}}s:4:"name";s:20:"Hook_config_currency";s:7:"comment";b:1;}s:26:"Hook_config_decryption_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/decryption_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/decryption_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_decryption_key";s:7:"comment";b:1;}s:36:"Hook_config_deeper_admin_breadcrumbs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/deeper_admin_breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/deeper_admin_breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_deeper_admin_breadcrumbs";s:7:"comment";b:1;}s:38:"Hook_config_default_comment_sort_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/default_comment_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/default_comment_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_default_comment_sort_order";s:7:"comment";b:1;}s:34:"Hook_config_default_preview_guests";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/default_preview_guests.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/default_preview_guests.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_default_preview_guests";s:7:"comment";b:1;}s:32:"Hook_config_default_video_height";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/default_video_height.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/default_video_height.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_default_video_height";s:7:"comment";b:1;}s:31:"Hook_config_default_video_width";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/default_video_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/default_video_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_default_video_width";s:7:"comment";b:1;}s:29:"Hook_config_delete_time_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/delete_time_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/delete_time_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_delete_time_limit";s:7:"comment";b:1;}s:30:"Hook_config_delete_trashed_pts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/delete_trashed_pts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/delete_trashed_pts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_delete_trashed_pts";s:7:"comment";b:1;}s:23:"Hook_config_description";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/description.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/description.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_description";s:7:"comment";b:1;}s:29:"Hook_config_detect_javascript";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/detect_javascript.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/detect_javascript.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_detect_javascript";s:7:"comment";b:1;}s:31:"Hook_config_detect_lang_browser";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/detect_lang_browser.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/detect_lang_browser.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_detect_lang_browser";s:7:"comment";b:1;}s:29:"Hook_config_detect_lang_forum";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/detect_lang_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/detect_lang_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_detect_lang_forum";s:7:"comment";b:1;}s:34:"Hook_config_display_name_generator";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/display_name_generator.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/display_name_generator.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_display_name_generator";s:7:"comment";b:1;}s:30:"Hook_config_display_php_errors";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/display_php_errors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/display_php_errors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_display_php_errors";s:7:"comment";b:1;}s:28:"Hook_config_dkim_private_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/dkim_private_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/dkim_private_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_dkim_private_key";s:7:"comment";b:1;}s:25:"Hook_config_dkim_selector";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/dkim_selector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/dkim_selector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_dkim_selector";s:7:"comment";b:1;}s:30:"Hook_config_dload_search_index";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/dload_search_index.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/dload_search_index.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_dload_search_index";s:7:"comment";b:1;}s:16:"Hook_config_dobs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:37:"sources/hooks/systems/config/dobs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:37:"sources/hooks/systems/config/dobs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:16:"Hook_config_dobs";s:7:"comment";b:1;}s:37:"Hook_config_download_entries_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/download_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/download_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_download_entries_per_page";s:7:"comment";b:1;}s:33:"Hook_config_download_gallery_root";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/download_gallery_root.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/download_gallery_root.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_download_gallery_root";s:7:"comment";b:1;}s:37:"Hook_config_download_subcats_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/download_subcats_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/download_subcats_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_download_subcats_per_page";s:7:"comment";b:1;}s:40:"Hook_config_downloads_default_sort_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/downloads_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/downloads_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_downloads_default_sort_order";s:7:"comment";b:1;}s:46:"Hook_config_downloads_show_stats_count_archive";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/downloads_show_stats_count_archive.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/downloads_show_stats_count_archive.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:46:"Hook_config_downloads_show_stats_count_archive";s:7:"comment";b:1;}s:48:"Hook_config_downloads_show_stats_count_bandwidth";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/downloads_show_stats_count_bandwidth.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/downloads_show_stats_count_bandwidth.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:48:"Hook_config_downloads_show_stats_count_bandwidth";s:7:"comment";b:1;}s:48:"Hook_config_downloads_show_stats_count_downloads";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/downloads_show_stats_count_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/downloads_show_stats_count_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:48:"Hook_config_downloads_show_stats_count_downloads";s:7:"comment";b:1;}s:44:"Hook_config_downloads_show_stats_count_total";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/downloads_show_stats_count_total.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/downloads_show_stats_count_total.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_downloads_show_stats_count_total";s:7:"comment";b:1;}s:37:"Hook_config_downloads_subcat_narrowin";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/downloads_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/downloads_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_downloads_subcat_narrowin";s:7:"comment";b:1;}s:35:"Hook_config_dual_format_newsletters";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/dual_format_newsletters.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/dual_format_newsletters.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_dual_format_newsletters";s:7:"comment";b:1;}s:28:"Hook_config_dynamic_firewall";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/dynamic_firewall.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/dynamic_firewall.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_dynamic_firewall";s:7:"comment";b:1;}s:25:"Hook_config_eager_wysiwyg";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/eager_wysiwyg.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/eager_wysiwyg.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_eager_wysiwyg";s:7:"comment";b:1;}s:31:"Hook_config_ecommerce_test_mode";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/ecommerce_test_mode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/ecommerce_test_mode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_ecommerce_test_mode";s:7:"comment";b:1;}s:27:"Hook_config_edit_time_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/edit_time_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/edit_time_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_edit_time_limit";s:7:"comment";b:1;}s:22:"Hook_config_edit_under";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/edit_under.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/edit_under.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_edit_under";s:7:"comment";b:1;}s:20:"Hook_config_editarea";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/editarea.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/editarea.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_editarea";s:7:"comment";b:1;}s:30:"Hook_config_email_confirm_join";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/email_confirm_join.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/email_confirm_join.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_email_confirm_join";s:7:"comment";b:1;}s:26:"Hook_config_email_log_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/email_log_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/email_log_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_email_log_days";s:7:"comment";b:1;}s:41:"Hook_config_enable_add_topic_btn_in_topic";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/enable_add_topic_btn_in_topic.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/enable_add_topic_btn_in_topic.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_enable_add_topic_btn_in_topic";s:7:"comment";b:1;}s:29:"Hook_config_enable_animations";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/enable_animations.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/enable_animations.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_enable_animations";s:7:"comment";b:1;}s:28:"Hook_config_enable_birthdays";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/enable_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/enable_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_enable_birthdays";s:7:"comment";b:1;}s:33:"Hook_config_enable_boolean_search";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_boolean_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_boolean_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_enable_boolean_search";s:7:"comment";b:1;}s:32:"Hook_config_enable_csv_recommend";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/enable_csv_recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/enable_csv_recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_enable_csv_recommend";s:7:"comment";b:1;}s:25:"Hook_config_enable_ecards";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/enable_ecards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/enable_ecards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_enable_ecards";s:7:"comment";b:1;}s:27:"Hook_config_enable_feedback";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_enable_feedback";s:7:"comment";b:1;}s:37:"Hook_config_enable_forum_dupe_buttons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/enable_forum_dupe_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/enable_forum_dupe_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_enable_forum_dupe_buttons";s:7:"comment";b:1;}s:33:"Hook_config_enable_highlight_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_enable_highlight_name";s:7:"comment";b:1;}s:40:"Hook_config_enable_keyword_density_check";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/enable_keyword_density_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/enable_keyword_density_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_enable_keyword_density_check";s:7:"comment";b:1;}s:34:"Hook_config_enable_mark_forum_read";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/enable_mark_forum_read.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/enable_mark_forum_read.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_enable_mark_forum_read";s:7:"comment";b:1;}s:36:"Hook_config_enable_mark_topic_unread";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_mark_topic_unread.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_mark_topic_unread.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_enable_mark_topic_unread";s:7:"comment";b:1;}s:38:"Hook_config_enable_markup_webstandards";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/enable_markup_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/enable_markup_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_enable_markup_webstandards";s:7:"comment";b:1;}s:30:"Hook_config_enable_multi_quote";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_multi_quote.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_multi_quote.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_multi_quote";s:7:"comment";b:1;}s:32:"Hook_config_enable_post_emphasis";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/enable_post_emphasis.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/enable_post_emphasis.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_enable_post_emphasis";s:7:"comment";b:1;}s:27:"Hook_config_enable_previews";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_previews.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_previews.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_enable_previews";s:7:"comment";b:1;}s:30:"Hook_config_enable_privacy_tab";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_privacy_tab.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_privacy_tab.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_privacy_tab";s:7:"comment";b:1;}s:31:"Hook_config_enable_pt_filtering";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/enable_pt_filtering.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/enable_pt_filtering.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_enable_pt_filtering";s:7:"comment";b:1;}s:30:"Hook_config_enable_pt_restrict";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_pt_restrict.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_pt_restrict.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_pt_restrict";s:7:"comment";b:1;}s:33:"Hook_config_enable_secondary_news";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_secondary_news.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/enable_secondary_news.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_enable_secondary_news";s:7:"comment";b:1;}s:29:"Hook_config_enable_seo_fields";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/enable_seo_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/enable_seo_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_enable_seo_fields";s:7:"comment";b:1;}s:27:"Hook_config_enable_skip_sig";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_skip_sig.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/enable_skip_sig.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_enable_skip_sig";s:7:"comment";b:1;}s:30:"Hook_config_enable_spell_check";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_spell_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_spell_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_spell_check";s:7:"comment";b:1;}s:30:"Hook_config_enable_staff_notes";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_staff_notes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enable_staff_notes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enable_staff_notes";s:7:"comment";b:1;}s:23:"Hook_config_enable_sunk";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/enable_sunk.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/enable_sunk.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_enable_sunk";s:7:"comment";b:1;}s:36:"Hook_config_enable_theme_img_buttons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_theme_img_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_theme_img_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_enable_theme_img_buttons";s:7:"comment";b:1;}s:37:"Hook_config_enable_user_online_groups";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/enable_user_online_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/enable_user_online_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_enable_user_online_groups";s:7:"comment";b:1;}s:36:"Hook_config_enable_views_sigs_option";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_views_sigs_option.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/enable_views_sigs_option.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_enable_views_sigs_option";s:7:"comment";b:1;}s:26:"Hook_config_encryption_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/encryption_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/encryption_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_encryption_key";s:7:"comment";b:1;}s:30:"Hook_config_enveloper_override";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enveloper_override.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/enveloper_override.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_enveloper_override";s:7:"comment";b:1;}s:23:"Hook_config_ffmpeg_path";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/ffmpeg_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/ffmpeg_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_ffmpeg_path";s:7:"comment";b:1;}s:49:"Hook_config_filedump_show_stats_count_total_files";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:70:"sources/hooks/systems/config/filedump_show_stats_count_total_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:70:"sources/hooks/systems/config/filedump_show_stats_count_total_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:49:"Hook_config_filedump_show_stats_count_total_files";s:7:"comment";b:1;}s:49:"Hook_config_filedump_show_stats_count_total_space";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:70:"sources/hooks/systems/config/filedump_show_stats_count_total_space.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:70:"sources/hooks/systems/config/filedump_show_stats_count_total_space.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:49:"Hook_config_filedump_show_stats_count_total_space";s:7:"comment";b:1;}s:26:"Hook_config_filetype_icons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/filetype_icons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/filetype_icons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_filetype_icons";s:7:"comment";b:1;}s:26:"Hook_config_filter_regions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/filter_regions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/filter_regions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_filter_regions";s:7:"comment";b:1;}s:26:"Hook_config_finish_profile";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/finish_profile.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/finish_profile.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_finish_profile";s:7:"comment";b:1;}s:23:"Hook_config_fixed_width";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/fixed_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/fixed_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_fixed_width";s:7:"comment";b:1;}s:29:"Hook_config_force_guest_names";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/force_guest_names.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/force_guest_names.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_force_guest_names";s:7:"comment";b:1;}s:32:"Hook_config_force_local_temp_dir";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/force_local_temp_dir.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/force_local_temp_dir.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_force_local_temp_dir";s:7:"comment";b:1;}s:30:"Hook_config_force_meta_refresh";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/force_meta_refresh.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/force_meta_refresh.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_force_meta_refresh";s:7:"comment";b:1;}s:33:"Hook_config_forced_preview_option";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/forced_preview_option.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/forced_preview_option.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_forced_preview_option";s:7:"comment";b:1;}s:27:"Hook_config_forum_in_portal";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/forum_in_portal.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/forum_in_portal.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_forum_in_portal";s:7:"comment";b:1;}s:32:"Hook_config_forum_posts_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/forum_posts_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/forum_posts_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_forum_posts_per_page";s:7:"comment";b:1;}s:43:"Hook_config_forum_show_personal_stats_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/forum_show_personal_stats_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/forum_show_personal_stats_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_forum_show_personal_stats_posts";s:7:"comment";b:1;}s:44:"Hook_config_forum_show_personal_stats_topics";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/forum_show_personal_stats_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/forum_show_personal_stats_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_forum_show_personal_stats_topics";s:7:"comment";b:1;}s:42:"Hook_config_forum_show_stats_count_members";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/forum_show_stats_count_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/forum_show_stats_count_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:42:"Hook_config_forum_show_stats_count_members";s:7:"comment";b:1;}s:60:"Hook_config_forum_show_stats_count_members_active_this_month";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:81:"sources/hooks/systems/config/forum_show_stats_count_members_active_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:81:"sources/hooks/systems/config/forum_show_stats_count_members_active_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:60:"Hook_config_forum_show_stats_count_members_active_this_month";s:7:"comment";b:1;}s:59:"Hook_config_forum_show_stats_count_members_active_this_week";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:80:"sources/hooks/systems/config/forum_show_stats_count_members_active_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:80:"sources/hooks/systems/config/forum_show_stats_count_members_active_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:59:"Hook_config_forum_show_stats_count_members_active_this_week";s:7:"comment";b:1;}s:55:"Hook_config_forum_show_stats_count_members_active_today";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/forum_show_stats_count_members_active_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/forum_show_stats_count_members_active_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:55:"Hook_config_forum_show_stats_count_members_active_today";s:7:"comment";b:1;}s:57:"Hook_config_forum_show_stats_count_members_new_this_month";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:78:"sources/hooks/systems/config/forum_show_stats_count_members_new_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:78:"sources/hooks/systems/config/forum_show_stats_count_members_new_this_month.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:57:"Hook_config_forum_show_stats_count_members_new_this_month";s:7:"comment";b:1;}s:56:"Hook_config_forum_show_stats_count_members_new_this_week";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:77:"sources/hooks/systems/config/forum_show_stats_count_members_new_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:77:"sources/hooks/systems/config/forum_show_stats_count_members_new_this_week.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:56:"Hook_config_forum_show_stats_count_members_new_this_week";s:7:"comment";b:1;}s:52:"Hook_config_forum_show_stats_count_members_new_today";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:73:"sources/hooks/systems/config/forum_show_stats_count_members_new_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:73:"sources/hooks/systems/config/forum_show_stats_count_members_new_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:52:"Hook_config_forum_show_stats_count_members_new_today";s:7:"comment";b:1;}s:40:"Hook_config_forum_show_stats_count_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/forum_show_stats_count_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/forum_show_stats_count_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_forum_show_stats_count_posts";s:7:"comment";b:1;}s:46:"Hook_config_forum_show_stats_count_posts_today";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/forum_show_stats_count_posts_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/forum_show_stats_count_posts_today.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:46:"Hook_config_forum_show_stats_count_posts_today";s:7:"comment";b:1;}s:41:"Hook_config_forum_show_stats_count_topics";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/forum_show_stats_count_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/forum_show_stats_count_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_forum_show_stats_count_topics";s:7:"comment";b:1;}s:33:"Hook_config_forum_topics_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/forum_topics_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/forum_topics_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_forum_topics_per_page";s:7:"comment";b:1;}s:20:"Hook_config_forw_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/forw_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/forw_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_forw_url";s:7:"comment";b:1;}s:30:"Hook_config_fractional_editing";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/fractional_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/fractional_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_fractional_editing";s:7:"comment";b:1;}s:40:"Hook_config_galleries_default_sort_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/galleries_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/galleries_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_galleries_default_sort_order";s:7:"comment";b:1;}s:48:"Hook_config_galleries_show_stats_count_galleries";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/galleries_show_stats_count_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:69:"sources/hooks/systems/config/galleries_show_stats_count_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:48:"Hook_config_galleries_show_stats_count_galleries";s:7:"comment";b:1;}s:45:"Hook_config_galleries_show_stats_count_images";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/galleries_show_stats_count_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/galleries_show_stats_count_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:45:"Hook_config_galleries_show_stats_count_images";s:7:"comment";b:1;}s:45:"Hook_config_galleries_show_stats_count_videos";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/galleries_show_stats_count_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/galleries_show_stats_count_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:45:"Hook_config_galleries_show_stats_count_videos";s:7:"comment";b:1;}s:37:"Hook_config_galleries_subcat_narrowin";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/galleries_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/galleries_subcat_narrowin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_galleries_subcat_narrowin";s:7:"comment";b:1;}s:41:"Hook_config_gallery_entries_flow_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/gallery_entries_flow_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/gallery_entries_flow_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_gallery_entries_flow_per_page";s:7:"comment";b:1;}s:44:"Hook_config_gallery_entries_regular_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/gallery_entries_regular_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/gallery_entries_regular_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_gallery_entries_regular_per_page";s:7:"comment";b:1;}s:35:"Hook_config_gallery_feedback_fields";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/gallery_feedback_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/gallery_feedback_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_gallery_feedback_fields";s:7:"comment";b:1;}s:40:"Hook_config_gallery_media_title_required";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/gallery_media_title_required.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/gallery_media_title_required.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_gallery_media_title_required";s:7:"comment";b:1;}s:33:"Hook_config_gallery_member_synced";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/gallery_member_synced.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/gallery_member_synced.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_gallery_member_synced";s:7:"comment";b:1;}s:27:"Hook_config_gallery_mode_is";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/gallery_mode_is.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/gallery_mode_is.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_gallery_mode_is";s:7:"comment";b:1;}s:30:"Hook_config_gallery_name_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gallery_name_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gallery_name_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_gallery_name_order";s:7:"comment";b:1;}s:31:"Hook_config_gallery_permissions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/gallery_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/gallery_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_gallery_permissions";s:7:"comment";b:1;}s:29:"Hook_config_gallery_rep_image";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/gallery_rep_image.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/gallery_rep_image.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_gallery_rep_image";s:7:"comment";b:1;}s:29:"Hook_config_gallery_selectors";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/gallery_selectors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/gallery_selectors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_gallery_selectors";s:7:"comment";b:1;}s:30:"Hook_config_gallery_watermarks";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gallery_watermarks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gallery_watermarks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_gallery_watermarks";s:7:"comment";b:1;}s:40:"Hook_config_general_safety_listing_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/general_safety_listing_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/general_safety_listing_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_general_safety_listing_limit";s:7:"comment";b:1;}s:30:"Hook_config_gift_reward_amount";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gift_reward_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gift_reward_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_gift_reward_amount";s:7:"comment";b:1;}s:30:"Hook_config_gift_reward_chance";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gift_reward_chance.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/gift_reward_chance.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_gift_reward_chance";s:7:"comment";b:1;}s:31:"Hook_config_global_donext_icons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/global_donext_icons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/global_donext_icons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_global_donext_icons";s:7:"comment";b:1;}s:28:"Hook_config_google_analytics";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/google_analytics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/google_analytics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_google_analytics";s:7:"comment";b:1;}s:34:"Hook_config_google_geocode_api_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/google_geocode_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/google_geocode_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_google_geocode_api_key";s:7:"comment";b:1;}s:36:"Hook_config_google_translate_api_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/google_translate_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/google_translate_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_google_translate_api_key";s:7:"comment";b:1;}s:35:"Hook_config_group_private_chatrooms";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/group_private_chatrooms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/group_private_chatrooms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_group_private_chatrooms";s:7:"comment";b:1;}s:23:"Hook_config_gzip_output";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/gzip_output.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/gzip_output.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_gzip_output";s:7:"comment";b:1;}s:30:"Hook_config_hack_ban_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/hack_ban_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/hack_ban_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_hack_ban_threshold";s:7:"comment";b:1;}s:32:"Hook_config_has_low_memory_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/has_low_memory_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/has_low_memory_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_has_low_memory_limit";s:7:"comment";b:1;}s:35:"Hook_config_header_menu_call_string";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/header_menu_call_string.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/header_menu_call_string.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_header_menu_call_string";s:7:"comment";b:1;}s:26:"Hook_config_highlight_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_highlight_name";s:7:"comment";b:1;}s:27:"Hook_config_honeypot_phrase";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/honeypot_phrase.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/honeypot_phrase.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_honeypot_phrase";s:7:"comment";b:1;}s:24:"Hook_config_honeypot_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/honeypot_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/honeypot_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_honeypot_url";s:7:"comment";b:1;}s:32:"Hook_config_hot_topic_definition";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/hot_topic_definition.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/hot_topic_definition.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_hot_topic_definition";s:7:"comment";b:1;}s:31:"Hook_config_httpauth_is_enabled";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/httpauth_is_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/httpauth_is_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_httpauth_is_enabled";s:7:"comment";b:1;}s:23:"Hook_config_imap_folder";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/imap_folder.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/imap_folder.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_imap_folder";s:7:"comment";b:1;}s:21:"Hook_config_imap_host";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/imap_host.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/imap_host.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_imap_host";s:7:"comment";b:1;}s:25:"Hook_config_imap_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/imap_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/imap_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_imap_password";s:7:"comment";b:1;}s:21:"Hook_config_imap_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/imap_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/imap_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_imap_port";s:7:"comment";b:1;}s:25:"Hook_config_imap_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/imap_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/imap_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_imap_username";s:7:"comment";b:1;}s:31:"Hook_config_immediate_downloads";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/immediate_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/immediate_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_immediate_downloads";s:7:"comment";b:1;}s:38:"Hook_config_implied_spammer_confidence";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/implied_spammer_confidence.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/implied_spammer_confidence.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_implied_spammer_confidence";s:7:"comment";b:1;}s:37:"Hook_config_important_groups_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/important_groups_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/important_groups_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_important_groups_per_page";s:7:"comment";b:1;}s:30:"Hook_config_infinite_scrolling";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/infinite_scrolling.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/infinite_scrolling.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_infinite_scrolling";s:7:"comment";b:1;}s:31:"Hook_config_initial_banner_hits";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/initial_banner_hits.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/initial_banner_hits.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_initial_banner_hits";s:7:"comment";b:1;}s:25:"Hook_config_initial_quota";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/initial_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/initial_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_initial_quota";s:7:"comment";b:1;}s:31:"Hook_config_inline_pp_advertise";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/inline_pp_advertise.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/inline_pp_advertise.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_inline_pp_advertise";s:7:"comment";b:1;}s:27:"Hook_config_interest_levels";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/interest_levels.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/interest_levels.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_interest_levels";s:7:"comment";b:1;}s:26:"Hook_config_intro_forum_id";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/intro_forum_id.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/intro_forum_id.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_intro_forum_id";s:7:"comment";b:1;}s:27:"Hook_config_invites_per_day";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/invites_per_day.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/invites_per_day.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_invites_per_day";s:7:"comment";b:1;}s:25:"Hook_config_ip_forwarding";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ip_forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ip_forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_ip_forwarding";s:7:"comment";b:1;}s:34:"Hook_config_ip_strict_for_sessions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/ip_strict_for_sessions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/ip_strict_for_sessions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_ip_strict_for_sessions";s:7:"comment";b:1;}s:15:"Hook_config_ipn";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/ipn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/ipn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:15:"Hook_config_ipn";s:7:"comment";b:1;}s:22:"Hook_config_ipn_digest";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/ipn_digest.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/ipn_digest.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_ipn_digest";s:7:"comment";b:1;}s:24:"Hook_config_ipn_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ipn_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ipn_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_ipn_password";s:7:"comment";b:1;}s:20:"Hook_config_ipn_test";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/ipn_test.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/ipn_test.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_ipn_test";s:7:"comment";b:1;}s:33:"Hook_config_is_on_anonymous_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/is_on_anonymous_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/is_on_anonymous_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_is_on_anonymous_posts";s:7:"comment";b:1;}s:43:"Hook_config_is_on_automatic_mark_topic_read";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/is_on_automatic_mark_topic_read.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/is_on_automatic_mark_topic_read.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_is_on_automatic_mark_topic_read";s:7:"comment";b:1;}s:28:"Hook_config_is_on_banner_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_banner_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_banner_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_is_on_banner_buy";s:7:"comment";b:1;}s:29:"Hook_config_is_on_block_cache";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_block_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_block_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_is_on_block_cache";s:7:"comment";b:1;}s:36:"Hook_config_is_on_comcode_page_cache";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_comcode_page_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_comcode_page_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_is_on_comcode_page_cache";s:7:"comment";b:1;}s:39:"Hook_config_is_on_comcode_page_children";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/is_on_comcode_page_children.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/is_on_comcode_page_children.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_is_on_comcode_page_children";s:7:"comment";b:1;}s:26:"Hook_config_is_on_comments";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_comments.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_comments.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_is_on_comments";s:7:"comment";b:1;}s:23:"Hook_config_is_on_coppa";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/is_on_coppa.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/is_on_coppa.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_is_on_coppa";s:7:"comment";b:1;}s:35:"Hook_config_is_on_emoticon_choosers";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/is_on_emoticon_choosers.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/is_on_emoticon_choosers.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_is_on_emoticon_choosers";s:7:"comment";b:1;}s:31:"Hook_config_is_on_folder_create";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/is_on_folder_create.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/is_on_folder_create.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_is_on_folder_create";s:7:"comment";b:1;}s:26:"Hook_config_is_on_forw_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_forw_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_forw_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_is_on_forw_buy";s:7:"comment";b:1;}s:30:"Hook_config_is_on_gambling_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_gambling_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_gambling_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_is_on_gambling_buy";s:7:"comment";b:1;}s:36:"Hook_config_is_on_highlight_name_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_highlight_name_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_highlight_name_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_is_on_highlight_name_buy";s:7:"comment";b:1;}s:30:"Hook_config_is_on_invisibility";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_invisibility.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_invisibility.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_is_on_invisibility";s:7:"comment";b:1;}s:25:"Hook_config_is_on_invites";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/is_on_invites.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/is_on_invites.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_is_on_invites";s:7:"comment";b:1;}s:28:"Hook_config_is_on_lang_cache";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_lang_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_lang_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_is_on_lang_cache";s:7:"comment";b:1;}s:26:"Hook_config_is_on_pop3_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_pop3_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_pop3_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_is_on_pop3_buy";s:7:"comment";b:1;}s:26:"Hook_config_is_on_post_map";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_post_map.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/is_on_post_map.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_is_on_post_map";s:7:"comment";b:1;}s:29:"Hook_config_is_on_post_titles";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_post_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_post_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_is_on_post_titles";s:7:"comment";b:1;}s:24:"Hook_config_is_on_rating";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/is_on_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/is_on_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_is_on_rating";s:7:"comment";b:1;}s:21:"Hook_config_is_on_rss";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/is_on_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/is_on_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_is_on_rss";s:7:"comment";b:1;}s:29:"Hook_config_is_on_show_online";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_show_online.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_on_show_online.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_is_on_show_online";s:7:"comment";b:1;}s:30:"Hook_config_is_on_staff_filter";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_staff_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/is_on_staff_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_is_on_staff_filter";s:7:"comment";b:1;}s:34:"Hook_config_is_on_strong_forum_tie";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/is_on_strong_forum_tie.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/is_on_strong_forum_tie.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_is_on_strong_forum_tie";s:7:"comment";b:1;}s:28:"Hook_config_is_on_sync_staff";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_sync_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_sync_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_is_on_sync_staff";s:7:"comment";b:1;}s:32:"Hook_config_is_on_template_cache";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/is_on_template_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/is_on_template_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_is_on_template_cache";s:7:"comment";b:1;}s:36:"Hook_config_is_on_timezone_detection";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_timezone_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_timezone_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_is_on_timezone_detection";s:7:"comment";b:1;}s:36:"Hook_config_is_on_topic_descriptions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_topic_descriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/is_on_topic_descriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_is_on_topic_descriptions";s:7:"comment";b:1;}s:33:"Hook_config_is_on_topic_emoticons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/is_on_topic_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/is_on_topic_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_is_on_topic_emoticons";s:7:"comment";b:1;}s:31:"Hook_config_is_on_topic_pin_buy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/is_on_topic_pin_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/is_on_topic_pin_buy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_is_on_topic_pin_buy";s:7:"comment";b:1;}s:28:"Hook_config_is_on_trackbacks";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/is_on_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_is_on_trackbacks";s:7:"comment";b:1;}s:29:"Hook_config_is_rss_advertised";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_rss_advertised.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/is_rss_advertised.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_is_rss_advertised";s:7:"comment";b:1;}s:24:"Hook_config_jpeg_quality";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/jpeg_quality.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/jpeg_quality.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_jpeg_quality";s:7:"comment";b:1;}s:22:"Hook_config_js_captcha";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/js_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/js_captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_js_captcha";s:7:"comment";b:1;}s:23:"Hook_config_js_overlays";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/js_overlays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/js_overlays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_js_overlays";s:7:"comment";b:1;}s:29:"Hook_config_keyset_pagination";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/keyset_pagination.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/keyset_pagination.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_keyset_pagination";s:7:"comment";b:1;}s:20:"Hook_config_keywords";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/keywords.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/keywords.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_keywords";s:7:"comment";b:1;}s:23:"Hook_config_lax_comcode";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/lax_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/lax_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_lax_comcode";s:7:"comment";b:1;}s:30:"Hook_config_ldap_allow_joining";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ldap_allow_joining.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ldap_allow_joining.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ldap_allow_joining";s:7:"comment";b:1;}s:24:"Hook_config_ldap_base_dn";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ldap_base_dn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ldap_base_dn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_ldap_base_dn";s:7:"comment";b:1;}s:30:"Hook_config_ldap_bind_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ldap_bind_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ldap_bind_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ldap_bind_password";s:7:"comment";b:1;}s:25:"Hook_config_ldap_bind_rdn";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ldap_bind_rdn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ldap_bind_rdn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_ldap_bind_rdn";s:7:"comment";b:1;}s:28:"Hook_config_ldap_group_class";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/ldap_group_class.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/ldap_group_class.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_ldap_group_class";s:7:"comment";b:1;}s:39:"Hook_config_ldap_group_search_qualifier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/ldap_group_search_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/ldap_group_search_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_ldap_group_search_qualifier";s:7:"comment";b:1;}s:25:"Hook_config_ldap_hostname";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ldap_hostname.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/ldap_hostname.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_ldap_hostname";s:7:"comment";b:1;}s:27:"Hook_config_ldap_is_enabled";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/ldap_is_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/ldap_is_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_ldap_is_enabled";s:7:"comment";b:1;}s:27:"Hook_config_ldap_is_windows";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/ldap_is_windows.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/ldap_is_windows.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_ldap_is_windows";s:7:"comment";b:1;}s:32:"Hook_config_ldap_login_qualifier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ldap_login_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ldap_login_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ldap_login_qualifier";s:7:"comment";b:1;}s:29:"Hook_config_ldap_member_class";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ldap_member_class.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ldap_member_class.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_ldap_member_class";s:7:"comment";b:1;}s:32:"Hook_config_ldap_member_property";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ldap_member_property.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ldap_member_property.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ldap_member_property";s:7:"comment";b:1;}s:40:"Hook_config_ldap_member_search_qualifier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/ldap_member_search_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/ldap_member_search_qualifier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_ldap_member_search_qualifier";s:7:"comment";b:1;}s:33:"Hook_config_ldap_none_bind_logins";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/ldap_none_bind_logins.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/ldap_none_bind_logins.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_ldap_none_bind_logins";s:7:"comment";b:1;}s:24:"Hook_config_ldap_version";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ldap_version.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/ldap_version.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_ldap_version";s:7:"comment";b:1;}s:35:"Hook_config_leader_board_show_staff";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/leader_board_show_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/leader_board_show_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_leader_board_show_staff";s:7:"comment";b:1;}s:29:"Hook_config_leader_board_size";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/leader_board_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/leader_board_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_leader_board_size";s:7:"comment";b:1;}s:35:"Hook_config_leader_board_start_date";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/leader_board_start_date.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/leader_board_start_date.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_leader_board_start_date";s:7:"comment";b:1;}s:17:"Hook_config_likes";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/likes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/likes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:17:"Hook_config_likes";s:7:"comment";b:1;}s:31:"Hook_config_login_error_secrecy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/login_error_secrecy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/login_error_secrecy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_login_error_secrecy";s:7:"comment";b:1;}s:31:"Hook_config_long_google_cookies";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/long_google_cookies.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/long_google_cookies.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_long_google_cookies";s:7:"comment";b:1;}s:27:"Hook_config_low_space_check";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/low_space_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/low_space_check.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_low_space_check";s:7:"comment";b:1;}s:22:"Hook_config_mail_queue";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/mail_queue.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/mail_queue.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_mail_queue";s:7:"comment";b:1;}s:28:"Hook_config_mail_queue_debug";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/mail_queue_debug.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/mail_queue_debug.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_mail_queue_debug";s:7:"comment";b:1;}s:23:"Hook_config_mail_server";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/mail_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/mail_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_mail_server";s:7:"comment";b:1;}s:26:"Hook_config_mails_per_send";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/mails_per_send.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/mails_per_send.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_mails_per_send";s:7:"comment";b:1;}s:27:"Hook_config_main_forum_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/main_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/main_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_main_forum_name";s:7:"comment";b:1;}s:35:"Hook_config_manual_gallery_codename";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/manual_gallery_codename.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/manual_gallery_codename.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_manual_gallery_codename";s:7:"comment";b:1;}s:38:"Hook_config_manual_gallery_media_types";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/manual_gallery_media_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/manual_gallery_media_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_manual_gallery_media_types";s:7:"comment";b:1;}s:33:"Hook_config_manual_gallery_parent";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/manual_gallery_parent.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/manual_gallery_parent.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_manual_gallery_parent";s:7:"comment";b:1;}s:45:"Hook_config_manual_subscription_expiry_notice";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/manual_subscription_expiry_notice.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/manual_subscription_expiry_notice.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:45:"Hook_config_manual_subscription_expiry_notice";s:7:"comment";b:1;}s:34:"Hook_config_max_chat_lobby_friends";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/max_chat_lobby_friends.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/max_chat_lobby_friends.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_max_chat_lobby_friends";s:7:"comment";b:1;}s:29:"Hook_config_max_download_size";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/max_download_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/max_download_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_max_download_size";s:7:"comment";b:1;}s:28:"Hook_config_max_forum_detail";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/max_forum_detail.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/max_forum_detail.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_max_forum_detail";s:7:"comment";b:1;}s:29:"Hook_config_max_forum_inspect";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/max_forum_inspect.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/max_forum_inspect.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_max_forum_inspect";s:7:"comment";b:1;}s:43:"Hook_config_max_ip_addresses_per_subscriber";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_ip_addresses_per_subscriber.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_ip_addresses_per_subscriber.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_max_ip_addresses_per_subscriber";s:7:"comment";b:1;}s:35:"Hook_config_max_member_title_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/max_member_title_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/max_member_title_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_max_member_title_length";s:7:"comment";b:1;}s:30:"Hook_config_max_moniker_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/max_moniker_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/max_moniker_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_max_moniker_length";s:7:"comment";b:1;}s:35:"Hook_config_max_newsletter_whatsnew";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/max_newsletter_whatsnew.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/max_newsletter_whatsnew.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_max_newsletter_whatsnew";s:7:"comment";b:1;}s:44:"Hook_config_max_personal_gallery_images_high";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/max_personal_gallery_images_high.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/max_personal_gallery_images_high.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_max_personal_gallery_images_high";s:7:"comment";b:1;}s:43:"Hook_config_max_personal_gallery_images_low";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_personal_gallery_images_low.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_personal_gallery_images_low.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_max_personal_gallery_images_low";s:7:"comment";b:1;}s:44:"Hook_config_max_personal_gallery_videos_high";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/max_personal_gallery_videos_high.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/max_personal_gallery_videos_high.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_max_personal_gallery_videos_high";s:7:"comment";b:1;}s:43:"Hook_config_max_personal_gallery_videos_low";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_personal_gallery_videos_low.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/max_personal_gallery_videos_low.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_max_personal_gallery_videos_low";s:7:"comment";b:1;}s:21:"Hook_config_max_quota";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/max_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/max_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_max_quota";s:7:"comment";b:1;}s:28:"Hook_config_max_thread_depth";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/max_thread_depth.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/max_thread_depth.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_max_thread_depth";s:7:"comment";b:1;}s:44:"Hook_config_maximum_autocomplete_suggestions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/maximum_autocomplete_suggestions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/maximum_autocomplete_suggestions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_maximum_autocomplete_suggestions";s:7:"comment";b:1;}s:28:"Hook_config_maximum_download";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/maximum_download.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/maximum_download.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_maximum_download";s:7:"comment";b:1;}s:33:"Hook_config_maximum_gamble_amount";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/maximum_gamble_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/maximum_gamble_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_maximum_gamble_amount";s:7:"comment";b:1;}s:37:"Hook_config_maximum_gamble_multiplier";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/maximum_gamble_multiplier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/maximum_gamble_multiplier.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_maximum_gamble_multiplier";s:7:"comment";b:1;}s:30:"Hook_config_maximum_image_size";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/maximum_image_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/maximum_image_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_maximum_image_size";s:7:"comment";b:1;}s:35:"Hook_config_maximum_password_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/maximum_password_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/maximum_password_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_maximum_password_length";s:7:"comment";b:1;}s:35:"Hook_config_maximum_username_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/maximum_username_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/maximum_username_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_maximum_username_length";s:7:"comment";b:1;}s:25:"Hook_config_maximum_users";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/maximum_users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/maximum_users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_maximum_users";s:7:"comment";b:1;}s:33:"Hook_config_md_default_sort_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/md_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/md_default_sort_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_md_default_sort_order";s:7:"comment";b:1;}s:28:"Hook_config_members_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_members_per_page";s:7:"comment";b:1;}s:35:"Hook_config_message_received_emails";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/message_received_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/message_received_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_message_received_emails";s:7:"comment";b:1;}s:32:"Hook_config_messaging_forum_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/messaging_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/messaging_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_messaging_forum_name";s:7:"comment";b:1;}s:39:"Hook_config_minimum_autocomplete_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/minimum_autocomplete_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/minimum_autocomplete_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_minimum_autocomplete_length";s:7:"comment";b:1;}s:44:"Hook_config_minimum_autocomplete_past_search";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/minimum_autocomplete_past_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/minimum_autocomplete_past_search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_minimum_autocomplete_past_search";s:7:"comment";b:1;}s:33:"Hook_config_minimum_gamble_amount";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/minimum_gamble_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/minimum_gamble_amount.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_minimum_gamble_amount";s:7:"comment";b:1;}s:35:"Hook_config_minimum_password_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/minimum_password_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/minimum_password_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_minimum_password_length";s:7:"comment";b:1;}s:37:"Hook_config_minimum_password_strength";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/minimum_password_strength.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/minimum_password_strength.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_minimum_password_strength";s:7:"comment";b:1;}s:35:"Hook_config_minimum_username_length";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/minimum_username_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/minimum_username_length.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_minimum_username_length";s:7:"comment";b:1;}s:33:"Hook_config_minutes_between_sends";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/minutes_between_sends.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/minutes_between_sends.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_minutes_between_sends";s:7:"comment";b:1;}s:26:"Hook_config_mobile_support";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/mobile_support.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/mobile_support.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_mobile_support";s:7:"comment";b:1;}s:22:"Hook_config_modal_user";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/modal_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/modal_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_modal_user";s:7:"comment";b:1;}s:35:"Hook_config_moniker_transliteration";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/moniker_transliteration.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/moniker_transliteration.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_moniker_transliteration";s:7:"comment";b:1;}s:25:"Hook_config_network_links";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/network_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/network_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_network_links";s:7:"comment";b:1;}s:36:"Hook_config_news_categories_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/news_categories_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/news_categories_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_news_categories_per_page";s:7:"comment";b:1;}s:33:"Hook_config_news_entries_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/news_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/news_entries_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_news_entries_per_page";s:7:"comment";b:1;}s:39:"Hook_config_news_show_stats_count_blogs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/news_show_stats_count_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/news_show_stats_count_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_news_show_stats_count_blogs";s:7:"comment";b:1;}s:45:"Hook_config_news_show_stats_count_total_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/news_show_stats_count_total_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:66:"sources/hooks/systems/config/news_show_stats_count_total_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:45:"Hook_config_news_show_stats_count_total_posts";s:7:"comment";b:1;}s:33:"Hook_config_news_summary_required";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/news_summary_required.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/news_summary_required.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_news_summary_required";s:7:"comment";b:1;}s:28:"Hook_config_news_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/news_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/news_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_news_update_time";s:7:"comment";b:1;}s:27:"Hook_config_newsletter_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/newsletter_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/newsletter_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_newsletter_text";s:7:"comment";b:1;}s:28:"Hook_config_newsletter_title";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/newsletter_title.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/newsletter_title.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_newsletter_title";s:7:"comment";b:1;}s:34:"Hook_config_newsletter_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/newsletter_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/newsletter_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_newsletter_update_time";s:7:"comment";b:1;}s:34:"Hook_config_normal_groups_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/normal_groups_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/normal_groups_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_normal_groups_per_page";s:7:"comment";b:1;}s:39:"Hook_config_notification_desktop_alerts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_desktop_alerts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_desktop_alerts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_notification_desktop_alerts";s:7:"comment";b:1;}s:39:"Hook_config_notification_enable_digests";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_enable_digests.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_enable_digests.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_notification_enable_digests";s:7:"comment";b:1;}s:46:"Hook_config_notification_enable_private_topics";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/notification_enable_private_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:67:"sources/hooks/systems/config/notification_enable_private_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:46:"Hook_config_notification_enable_private_topics";s:7:"comment";b:1;}s:34:"Hook_config_notification_keep_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/notification_keep_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/notification_keep_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_notification_keep_days";s:7:"comment";b:1;}s:39:"Hook_config_notification_poll_frequency";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_poll_frequency.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/notification_poll_frequency.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_notification_poll_frequency";s:7:"comment";b:1;}s:33:"Hook_config_oembed_html_whitelist";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/oembed_html_whitelist.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/oembed_html_whitelist.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_oembed_html_whitelist";s:7:"comment";b:1;}s:34:"Hook_config_oembed_manual_patterns";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/oembed_manual_patterns.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/oembed_manual_patterns.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_oembed_manual_patterns";s:7:"comment";b:1;}s:27:"Hook_config_oembed_max_size";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/oembed_max_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/oembed_max_size.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_oembed_max_size";s:7:"comment";b:1;}s:33:"Hook_config_one_per_email_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/one_per_email_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/one_per_email_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_one_per_email_address";s:7:"comment";b:1;}s:28:"Hook_config_output_streaming";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/output_streaming.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/output_streaming.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_output_streaming";s:7:"comment";b:1;}s:36:"Hook_config_overt_whisper_suggestion";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/overt_whisper_suggestion.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/overt_whisper_suggestion.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_overt_whisper_suggestion";s:7:"comment";b:1;}s:32:"Hook_config_password_change_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/password_change_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/password_change_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_password_change_days";s:7:"comment";b:1;}s:28:"Hook_config_password_cookies";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/password_cookies.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/password_cookies.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_password_cookies";s:7:"comment";b:1;}s:32:"Hook_config_password_expiry_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/password_expiry_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/password_expiry_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_password_expiry_days";s:7:"comment";b:1;}s:34:"Hook_config_password_reset_process";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/password_reset_process.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/password_reset_process.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_password_reset_process";s:7:"comment";b:1;}s:27:"Hook_config_payment_gateway";a:3:{s:9:"functions";a:3:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/payment_gateway.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/payment_gateway.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}s:14:"field_inputter";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/payment_gateway.php";s:10:"parameters";a:4:{i:0;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 config option name";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"myrow";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The config row";s:11:"phpdoc_name";s:5:"myrow";}i:2;a:5:{s:4:"name";s:10:"human_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The field title";s:11:"phpdoc_name";s:10:"human_name";}i:3;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:11:"explanation";}}s:4:"name";s:14:"field_inputter";s:11:"description";s:42:"Field inputter (because the_type=special).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The inputter";}}}s:4:"name";s:27:"Hook_config_payment_gateway";s:7:"comment";b:1;}s:22:"Hook_config_pd_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/pd_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/pd_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_pd_address";s:7:"comment";b:1;}s:20:"Hook_config_pd_email";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/pd_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/pd_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_pd_email";s:7:"comment";b:1;}s:21:"Hook_config_pd_number";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/pd_number.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/pd_number.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_pd_number";s:7:"comment";b:1;}s:34:"Hook_config_personal_under_members";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/personal_under_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/personal_under_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_personal_under_members";s:7:"comment";b:1;}s:20:"Hook_config_ping_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/ping_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:41:"sources/hooks/systems/config/ping_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:20:"Hook_config_ping_url";s:7:"comment";b:1;}s:31:"Hook_config_point_logs_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/point_logs_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/point_logs_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_point_logs_per_page";s:7:"comment";b:1;}s:29:"Hook_config_points_ADD_BANNER";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/points_ADD_BANNER.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/points_ADD_BANNER.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_points_ADD_BANNER";s:7:"comment";b:1;}s:31:"Hook_config_points_ADD_DOWNLOAD";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/points_ADD_DOWNLOAD.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/points_ADD_DOWNLOAD.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_points_ADD_DOWNLOAD";s:7:"comment";b:1;}s:28:"Hook_config_points_ADD_IMAGE";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/points_ADD_IMAGE.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/points_ADD_IMAGE.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_points_ADD_IMAGE";s:7:"comment";b:1;}s:27:"Hook_config_points_ADD_NEWS";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_NEWS.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_NEWS.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_points_ADD_NEWS";s:7:"comment";b:1;}s:27:"Hook_config_points_ADD_POLL";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_POLL.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_POLL.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_points_ADD_POLL";s:7:"comment";b:1;}s:27:"Hook_config_points_ADD_QUIZ";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_QUIZ.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_ADD_QUIZ.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_points_ADD_QUIZ";s:7:"comment";b:1;}s:28:"Hook_config_points_ADD_VIDEO";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/points_ADD_VIDEO.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/points_ADD_VIDEO.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_points_ADD_VIDEO";s:7:"comment";b:1;}s:23:"Hook_config_points_chat";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/points_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/points_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_points_chat";s:7:"comment";b:1;}s:30:"Hook_config_points_CHOOSE_POLL";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/points_CHOOSE_POLL.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/points_CHOOSE_POLL.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_points_CHOOSE_POLL";s:7:"comment";b:1;}s:35:"Hook_config_points_COMCODE_PAGE_ADD";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/points_COMCODE_PAGE_ADD.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/points_COMCODE_PAGE_ADD.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_points_COMCODE_PAGE_ADD";s:7:"comment";b:1;}s:27:"Hook_config_points_if_liked";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_if_liked.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/points_if_liked.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_points_if_liked";s:7:"comment";b:1;}s:26:"Hook_config_points_joining";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_joining.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_joining.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_points_joining";s:7:"comment";b:1;}s:36:"Hook_config_points_per_currency_unit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/points_per_currency_unit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/points_per_currency_unit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_points_per_currency_unit";s:7:"comment";b:1;}s:34:"Hook_config_points_per_daily_visit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/points_per_daily_visit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/points_per_daily_visit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_points_per_daily_visit";s:7:"comment";b:1;}s:26:"Hook_config_points_per_day";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_per_day.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_per_day.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_points_per_day";s:7:"comment";b:1;}s:26:"Hook_config_points_posting";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_posting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/points_posting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_points_posting";s:7:"comment";b:1;}s:25:"Hook_config_points_rating";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/points_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/points_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_points_rating";s:7:"comment";b:1;}s:33:"Hook_config_points_RECOMMEND_SITE";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/points_RECOMMEND_SITE.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/points_RECOMMEND_SITE.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_points_RECOMMEND_SITE";s:7:"comment";b:1;}s:55:"Hook_config_points_show_personal_stats_gift_points_left";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/points_show_personal_stats_gift_points_left.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/points_show_personal_stats_gift_points_left.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:55:"Hook_config_points_show_personal_stats_gift_points_left";s:7:"comment";b:1;}s:55:"Hook_config_points_show_personal_stats_gift_points_used";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/points_show_personal_stats_gift_points_used.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:76:"sources/hooks/systems/config/points_show_personal_stats_gift_points_used.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:55:"Hook_config_points_show_personal_stats_gift_points_used";s:7:"comment";b:1;}s:50:"Hook_config_points_show_personal_stats_points_left";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/points_show_personal_stats_points_left.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/points_show_personal_stats_points_left.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:50:"Hook_config_points_show_personal_stats_points_left";s:7:"comment";b:1;}s:50:"Hook_config_points_show_personal_stats_points_used";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/points_show_personal_stats_points_used.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:71:"sources/hooks/systems/config/points_show_personal_stats_points_used.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:50:"Hook_config_points_show_personal_stats_points_used";s:7:"comment";b:1;}s:51:"Hook_config_points_show_personal_stats_total_points";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:72:"sources/hooks/systems/config/points_show_personal_stats_total_points.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:72:"sources/hooks/systems/config/points_show_personal_stats_total_points.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:51:"Hook_config_points_show_personal_stats_total_points";s:7:"comment";b:1;}s:25:"Hook_config_points_voting";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/points_voting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/points_voting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_points_voting";s:7:"comment";b:1;}s:23:"Hook_config_points_wiki";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/points_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/points_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_points_wiki";s:7:"comment";b:1;}s:28:"Hook_config_poll_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/poll_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/poll_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_poll_update_time";s:7:"comment";b:1;}s:19:"Hook_config_pop_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/pop_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/pop_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:19:"Hook_config_pop_url";s:7:"comment";b:1;}s:34:"Hook_config_post_read_history_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/post_read_history_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/post_read_history_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_post_read_history_days";s:7:"comment";b:1;}s:36:"Hook_config_primary_members_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/primary_members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/primary_members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_primary_members_per_page";s:7:"comment";b:1;}s:32:"Hook_config_primary_paypal_email";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/primary_paypal_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/primary_paypal_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_primary_paypal_email";s:7:"comment";b:1;}s:23:"Hook_config_privacy_fax";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/privacy_fax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/privacy_fax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_privacy_fax";s:7:"comment";b:1;}s:34:"Hook_config_privacy_postal_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/privacy_postal_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/privacy_postal_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_privacy_postal_address";s:7:"comment";b:1;}s:35:"Hook_config_private_topics_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/private_topics_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/private_topics_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_private_topics_per_page";s:7:"comment";b:1;}s:31:"Hook_config_probation_usergroup";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/probation_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/probation_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_probation_usergroup";s:7:"comment";b:1;}s:40:"Hook_config_prohibit_password_whitespace";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/prohibit_password_whitespace.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/prohibit_password_whitespace.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_prohibit_password_whitespace";s:7:"comment";b:1;}s:40:"Hook_config_prohibit_username_whitespace";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/prohibit_username_whitespace.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/prohibit_username_whitespace.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_prohibit_username_whitespace";s:7:"comment";b:1;}s:17:"Hook_config_proxy";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/proxy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/proxy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:17:"Hook_config_proxy";s:7:"comment";b:1;}s:26:"Hook_config_proxy_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/proxy_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/proxy_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_proxy_password";s:7:"comment";b:1;}s:22:"Hook_config_proxy_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/proxy_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/proxy_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_proxy_port";s:7:"comment";b:1;}s:22:"Hook_config_proxy_user";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/proxy_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/proxy_user.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_proxy_user";s:7:"comment";b:1;}s:35:"Hook_config_pt_notifications_as_web";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/pt_notifications_as_web.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/pt_notifications_as_web.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_pt_notifications_as_web";s:7:"comment";b:1;}s:44:"Hook_config_quiz_show_stats_count_total_open";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/quiz_show_stats_count_total_open.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/config/quiz_show_stats_count_total_open.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:44:"Hook_config_quiz_show_stats_count_total_open";s:7:"comment";b:1;}s:17:"Hook_config_quota";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:38:"sources/hooks/systems/config/quota.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:17:"Hook_config_quota";s:7:"comment";b:1;}s:21:"Hook_config_quota_url";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/quota_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/quota_url.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_quota_url";s:7:"comment";b:1;}s:26:"Hook_config_random_avatars";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/random_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/random_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_random_avatars";s:7:"comment";b:1;}s:34:"Hook_config_remember_me_by_default";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/remember_me_by_default.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/remember_me_by_default.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_remember_me_by_default";s:7:"comment";b:1;}s:32:"Hook_config_reported_posts_forum";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/reported_posts_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/reported_posts_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_reported_posts_forum";s:7:"comment";b:1;}s:41:"Hook_config_require_new_member_validation";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/require_new_member_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/require_new_member_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_require_new_member_validation";s:7:"comment";b:1;}s:32:"Hook_config_restricted_usernames";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/restricted_usernames.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/restricted_usernames.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_restricted_usernames";s:7:"comment";b:1;}s:31:"Hook_config_reverse_thumb_order";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/reverse_thumb_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/reverse_thumb_order.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_reverse_thumb_order";s:7:"comment";b:1;}s:33:"Hook_config_root_zone_login_theme";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/root_zone_login_theme.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/root_zone_login_theme.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_root_zone_login_theme";s:7:"comment";b:1;}s:27:"Hook_config_rss_update_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/rss_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/rss_update_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_rss_update_time";s:7:"comment";b:1;}s:35:"Hook_config_search_results_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/search_results_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/search_results_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_search_results_per_page";s:7:"comment";b:1;}s:34:"Hook_config_search_with_date_range";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/search_with_date_range.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/search_with_date_range.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_search_with_date_range";s:7:"comment";b:1;}s:38:"Hook_config_secondary_members_per_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/secondary_members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/secondary_members_per_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_secondary_members_per_page";s:7:"comment";b:1;}s:37:"Hook_config_security_token_exceptions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/security_token_exceptions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/security_token_exceptions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_security_token_exceptions";s:7:"comment";b:1;}s:40:"Hook_config_send_error_emails_ocproducts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/send_error_emails_ocproducts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/send_error_emails_ocproducts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_send_error_emails_ocproducts";s:7:"comment";b:1;}s:24:"Hook_config_seq_post_ids";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/seq_post_ids.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/seq_post_ids.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_seq_post_ids";s:7:"comment";b:1;}s:31:"Hook_config_session_expiry_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/session_expiry_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/session_expiry_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_session_expiry_time";s:7:"comment";b:1;}s:28:"Hook_config_session_prudence";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/session_prudence.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/session_prudence.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_session_prudence";s:7:"comment";b:1;}s:32:"Hook_config_shipping_cost_factor";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/shipping_cost_factor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/shipping_cost_factor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_shipping_cost_factor";s:7:"comment";b:1;}s:23:"Hook_config_show_avatar";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/show_avatar.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/show_avatar.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_show_avatar";s:7:"comment";b:1;}s:35:"Hook_config_show_conceded_mode_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_conceded_mode_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_conceded_mode_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_show_conceded_mode_link";s:7:"comment";b:1;}s:32:"Hook_config_show_content_tagging";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_content_tagging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_content_tagging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_show_content_tagging";s:7:"comment";b:1;}s:39:"Hook_config_show_content_tagging_inline";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/show_content_tagging_inline.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/show_content_tagging_inline.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_show_content_tagging_inline";s:7:"comment";b:1;}s:21:"Hook_config_show_docs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/show_docs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/show_docs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_show_docs";s:7:"comment";b:1;}s:27:"Hook_config_show_empty_cpfs";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/show_empty_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/show_empty_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_show_empty_cpfs";s:7:"comment";b:1;}s:32:"Hook_config_show_empty_galleries";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_empty_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_empty_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_show_empty_galleries";s:7:"comment";b:1;}s:32:"Hook_config_show_first_join_page";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_first_join_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_first_join_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_show_first_join_page";s:7:"comment";b:1;}s:31:"Hook_config_show_gallery_counts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/show_gallery_counts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/show_gallery_counts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_show_gallery_counts";s:7:"comment";b:1;}s:29:"Hook_config_show_inline_stats";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/show_inline_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/show_inline_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_show_inline_stats";s:7:"comment";b:1;}s:40:"Hook_config_show_personal_adminzone_link";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/show_personal_adminzone_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/show_personal_adminzone_link.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_show_personal_adminzone_link";s:7:"comment";b:1;}s:36:"Hook_config_show_personal_last_visit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/show_personal_last_visit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/show_personal_last_visit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_show_personal_last_visit";s:7:"comment";b:1;}s:35:"Hook_config_show_personal_sub_links";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_personal_sub_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_personal_sub_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_show_personal_sub_links";s:7:"comment";b:1;}s:35:"Hook_config_show_personal_usergroup";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_personal_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_personal_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_show_personal_usergroup";s:7:"comment";b:1;}s:32:"Hook_config_show_post_validation";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_post_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/show_post_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_show_post_validation";s:7:"comment";b:1;}s:31:"Hook_config_show_screen_actions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/show_screen_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/show_screen_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_show_screen_actions";s:7:"comment";b:1;}s:35:"Hook_config_show_staff_page_actions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_staff_page_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/show_staff_page_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_show_staff_page_actions";s:7:"comment";b:1;}s:19:"Hook_config_show_su";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/show_su.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/show_su.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:19:"Hook_config_show_su";s:7:"comment";b:1;}s:37:"Hook_config_simplified_attachments_ui";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/simplified_attachments_ui.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/simplified_attachments_ui.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_simplified_attachments_ui";s:7:"comment";b:1;}s:29:"Hook_config_simplified_donext";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/simplified_donext.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/simplified_donext.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_simplified_donext";s:7:"comment";b:1;}s:43:"Hook_config_simplify_wysiwyg_by_permissions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/simplify_wysiwyg_by_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:64:"sources/hooks/systems/config/simplify_wysiwyg_by_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:43:"Hook_config_simplify_wysiwyg_by_permissions";s:7:"comment";b:1;}s:23:"Hook_config_site_closed";a:3:{s:9:"functions";a:3:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/site_closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/site_closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}s:14:"field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/site_closed.php";s:10:"parameters";a:4:{i:0;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 config option name";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"myrow";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The config row";s:11:"phpdoc_name";s:5:"myrow";}i:2;a:5:{s:4:"name";s:10:"human_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The field title";s:11:"phpdoc_name";s:10:"human_name";}i:3;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:11:"explanation";}}s:4:"name";s:14:"field_inputter";s:11:"description";s:42:"Field inputter (because the_type=special).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The inputter";}}}s:4:"name";s:23:"Hook_config_site_closed";s:7:"comment";b:1;}s:21:"Hook_config_site_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/site_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/site_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_site_name";s:7:"comment";b:1;}s:22:"Hook_config_site_scope";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/site_scope.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/site_scope.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_site_scope";s:7:"comment";b:1;}s:23:"Hook_config_sitewide_im";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/sitewide_im.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/sitewide_im.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_sitewide_im";s:7:"comment";b:1;}s:22:"Hook_config_sms_api_id";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/sms_api_id.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/sms_api_id.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_sms_api_id";s:7:"comment";b:1;}s:26:"Hook_config_sms_high_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/sms_high_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/sms_high_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_sms_high_limit";s:7:"comment";b:1;}s:34:"Hook_config_sms_high_trigger_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/sms_high_trigger_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/sms_high_trigger_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_sms_high_trigger_limit";s:7:"comment";b:1;}s:25:"Hook_config_sms_low_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/sms_low_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/sms_low_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_sms_low_limit";s:7:"comment";b:1;}s:33:"Hook_config_sms_low_trigger_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/sms_low_trigger_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/sms_low_trigger_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_sms_low_trigger_limit";s:7:"comment";b:1;}s:24:"Hook_config_sms_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/sms_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/sms_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_sms_password";s:7:"comment";b:1;}s:24:"Hook_config_sms_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/sms_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/sms_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_sms_username";s:7:"comment";b:1;}s:29:"Hook_config_smtp_from_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_from_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_from_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_smtp_from_address";s:7:"comment";b:1;}s:29:"Hook_config_smtp_sockets_host";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_sockets_host.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_sockets_host.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_smtp_sockets_host";s:7:"comment";b:1;}s:33:"Hook_config_smtp_sockets_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/smtp_sockets_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/smtp_sockets_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_smtp_sockets_password";s:7:"comment";b:1;}s:29:"Hook_config_smtp_sockets_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_sockets_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/smtp_sockets_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_smtp_sockets_port";s:7:"comment";b:1;}s:28:"Hook_config_smtp_sockets_use";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/smtp_sockets_use.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/smtp_sockets_use.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_smtp_sockets_use";s:7:"comment";b:1;}s:33:"Hook_config_smtp_sockets_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/smtp_sockets_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/smtp_sockets_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_smtp_sockets_username";s:7:"comment";b:1;}s:35:"Hook_config_spam_approval_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/spam_approval_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/spam_approval_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_spam_approval_threshold";s:7:"comment";b:1;}s:30:"Hook_config_spam_ban_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/spam_ban_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/spam_ban_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_spam_ban_threshold";s:7:"comment";b:1;}s:36:"Hook_config_spam_blackhole_detection";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/spam_blackhole_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:57:"sources/hooks/systems/config/spam_blackhole_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:36:"Hook_config_spam_blackhole_detection";s:7:"comment";b:1;}s:28:"Hook_config_spam_block_lists";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/spam_block_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/spam_block_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_spam_block_lists";s:7:"comment";b:1;}s:32:"Hook_config_spam_block_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_block_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_block_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_spam_block_threshold";s:7:"comment";b:1;}s:27:"Hook_config_spam_cache_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/spam_cache_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/spam_cache_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_spam_cache_time";s:7:"comment";b:1;}s:33:"Hook_config_spam_check_exclusions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/spam_check_exclusions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/spam_check_exclusions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_spam_check_exclusions";s:7:"comment";b:1;}s:28:"Hook_config_spam_check_level";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/spam_check_level.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/spam_check_level.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_spam_check_level";s:7:"comment";b:1;}s:32:"Hook_config_spam_check_usernames";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_check_usernames.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_check_usernames.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_spam_check_usernames";s:7:"comment";b:1;}s:32:"Hook_config_spam_stale_threshold";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_stale_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/spam_stale_threshold.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_spam_stale_threshold";s:7:"comment";b:1;}s:15:"Hook_config_ssw";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/ssw.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:36:"sources/hooks/systems/config/ssw.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:15:"Hook_config_ssw";s:7:"comment";b:1;}s:25:"Hook_config_staff_address";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/staff_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/staff_address.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_staff_address";s:7:"comment";b:1;}s:22:"Hook_config_staff_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/staff_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/staff_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_staff_text";s:7:"comment";b:1;}s:28:"Hook_config_stats_store_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/stats_store_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/stats_store_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_stats_store_time";s:7:"comment";b:1;}s:29:"Hook_config_stats_when_closed";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/stats_when_closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/stats_when_closed.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_stats_when_closed";s:7:"comment";b:1;}s:33:"Hook_config_stopforumspam_api_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/stopforumspam_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/stopforumspam_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_stopforumspam_api_key";s:7:"comment";b:1;}s:27:"Hook_config_store_revisions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/store_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/store_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_store_revisions";s:7:"comment";b:1;}s:33:"Hook_config_subgallery_link_limit";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/subgallery_link_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:54:"sources/hooks/systems/config/subgallery_link_limit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:33:"Hook_config_subgallery_link_limit";s:7:"comment";b:1;}s:25:"Hook_config_super_logging";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/super_logging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/super_logging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_super_logging";s:7:"comment";b:1;}s:29:"Hook_config_supermembers_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/supermembers_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/supermembers_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_supermembers_text";s:7:"comment";b:1;}s:28:"Hook_config_support_operator";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/support_operator.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/support_operator.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_support_operator";s:7:"comment";b:1;}s:28:"Hook_config_tasks_background";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/tasks_background.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/tasks_background.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_tasks_background";s:7:"comment";b:1;}s:28:"Hook_config_threaded_buttons";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/threaded_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/threaded_buttons.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_threaded_buttons";s:7:"comment";b:1;}s:23:"Hook_config_thumb_width";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/thumb_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/thumb_width.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_thumb_width";s:7:"comment";b:1;}s:30:"Hook_config_ticket_auto_assign";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_auto_assign.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_auto_assign.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ticket_auto_assign";s:7:"comment";b:1;}s:29:"Hook_config_ticket_email_from";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ticket_email_from.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ticket_email_from.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_ticket_email_from";s:7:"comment";b:1;}s:29:"Hook_config_ticket_forum_name";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ticket_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/ticket_forum_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_ticket_forum_name";s:7:"comment";b:1;}s:26:"Hook_config_ticket_mail_on";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/ticket_mail_on.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/ticket_mail_on.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_ticket_mail_on";s:7:"comment";b:1;}s:32:"Hook_config_ticket_mail_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_mail_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_mail_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ticket_mail_password";s:7:"comment";b:1;}s:30:"Hook_config_ticket_mail_server";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_mail_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_mail_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ticket_mail_server";s:7:"comment";b:1;}s:35:"Hook_config_ticket_mail_server_port";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/ticket_mail_server_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/ticket_mail_server_port.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_ticket_mail_server_port";s:7:"comment";b:1;}s:35:"Hook_config_ticket_mail_server_type";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/ticket_mail_server_type.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/ticket_mail_server_type.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_ticket_mail_server_type";s:7:"comment";b:1;}s:32:"Hook_config_ticket_mail_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_mail_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_mail_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ticket_mail_username";s:7:"comment";b:1;}s:32:"Hook_config_ticket_member_forums";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_member_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/ticket_member_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_ticket_member_forums";s:7:"comment";b:1;}s:23:"Hook_config_ticket_text";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/ticket_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/ticket_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_ticket_text";s:7:"comment";b:1;}s:30:"Hook_config_ticket_type_forums";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_type_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/ticket_type_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_ticket_type_forums";s:7:"comment";b:1;}s:21:"Hook_config_topic_pin";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_topic_pin";s:7:"comment";b:1;}s:30:"Hook_config_topic_pin_max_days";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/topic_pin_max_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/topic_pin_max_days.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_topic_pin_max_days";s:7:"comment";b:1;}s:34:"Hook_config_tornevall_api_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/tornevall_api_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/tornevall_api_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_tornevall_api_password";s:7:"comment";b:1;}s:34:"Hook_config_tornevall_api_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/tornevall_api_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/tornevall_api_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_tornevall_api_username";s:7:"comment";b:1;}s:30:"Hook_config_transcoding_server";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/transcoding_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/transcoding_server.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_transcoding_server";s:7:"comment";b:1;}s:40:"Hook_config_transcoding_zencoder_api_key";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/transcoding_zencoder_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:61:"sources/hooks/systems/config/transcoding_zencoder_api_key.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:40:"Hook_config_transcoding_zencoder_api_key";s:7:"comment";b:1;}s:41:"Hook_config_transcoding_zencoder_ftp_path";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/transcoding_zencoder_ftp_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:62:"sources/hooks/systems/config/transcoding_zencoder_ftp_path.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:41:"Hook_config_transcoding_zencoder_ftp_path";s:7:"comment";b:1;}s:22:"Hook_config_tree_lists";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/tree_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/tree_lists.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_tree_lists";s:7:"comment";b:1;}s:21:"Hook_config_unzip_cmd";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/unzip_cmd.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/unzip_cmd.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_unzip_cmd";s:7:"comment";b:1;}s:21:"Hook_config_unzip_dir";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/unzip_dir.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:42:"sources/hooks/systems/config/unzip_dir.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:21:"Hook_config_unzip_dir";s:7:"comment";b:1;}s:32:"Hook_config_url_monikers_enabled";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/url_monikers_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/url_monikers_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_url_monikers_enabled";s:7:"comment";b:1;}s:22:"Hook_config_url_scheme";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/url_scheme.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:43:"sources/hooks/systems/config/url_scheme.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:22:"Hook_config_url_scheme";s:7:"comment";b:1;}s:34:"Hook_config_use_banner_permissions";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/use_banner_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/use_banner_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_use_banner_permissions";s:7:"comment";b:1;}s:24:"Hook_config_use_captchas";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/use_captchas.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/use_captchas.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_use_captchas";s:7:"comment";b:1;}s:32:"Hook_config_use_contextual_dates";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/use_contextual_dates.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/use_contextual_dates.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_use_contextual_dates";s:7:"comment";b:1;}s:24:"Hook_config_use_joindate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/use_joindate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/use_joindate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_use_joindate";s:7:"comment";b:1;}s:26:"Hook_config_use_lastondate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/use_lastondate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:47:"sources/hooks/systems/config/use_lastondate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:26:"Hook_config_use_lastondate";s:7:"comment";b:1;}s:29:"Hook_config_use_local_payment";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/use_local_payment.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/use_local_payment.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_use_local_payment";s:7:"comment";b:1;}s:25:"Hook_config_use_true_from";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/use_true_from.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/use_true_from.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_use_true_from";s:7:"comment";b:1;}s:32:"Hook_config_user_postsize_errors";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/user_postsize_errors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/user_postsize_errors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_user_postsize_errors";s:7:"comment";b:1;}s:29:"Hook_config_username_click_im";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/username_click_im.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/username_click_im.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_username_click_im";s:7:"comment";b:1;}s:34:"Hook_config_username_profile_links";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/username_profile_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/username_profile_links.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_username_profile_links";s:7:"comment";b:1;}s:29:"Hook_config_users_online_time";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/users_online_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/users_online_time.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_users_online_time";s:7:"comment";b:1;}s:38:"Hook_config_usersonline_show_birthdays";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/usersonline_show_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:59:"sources/hooks/systems/config/usersonline_show_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:38:"Hook_config_usersonline_show_birthdays";s:7:"comment";b:1;}s:42:"Hook_config_usersonline_show_newest_member";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/usersonline_show_newest_member.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:63:"sources/hooks/systems/config/usersonline_show_newest_member.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:42:"Hook_config_usersonline_show_newest_member";s:7:"comment";b:1;}s:24:"Hook_config_valid_audios";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_audios.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_audios.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_valid_audios";s:7:"comment";b:1;}s:31:"Hook_config_valid_email_domains";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/valid_email_domains.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/valid_email_domains.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_valid_email_domains";s:7:"comment";b:1;}s:24:"Hook_config_valid_images";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_images.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_valid_images";s:7:"comment";b:1;}s:23:"Hook_config_valid_types";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/valid_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:44:"sources/hooks/systems/config/valid_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:23:"Hook_config_valid_types";s:7:"comment";b:1;}s:24:"Hook_config_valid_videos";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/valid_videos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_valid_videos";s:7:"comment";b:1;}s:25:"Hook_config_video_bitrate";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/video_bitrate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/video_bitrate.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_video_bitrate";s:7:"comment";b:1;}s:32:"Hook_config_video_height_setting";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/video_height_setting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/video_height_setting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_video_height_setting";s:7:"comment";b:1;}s:31:"Hook_config_video_width_setting";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/video_width_setting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/video_width_setting.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_video_width_setting";s:7:"comment";b:1;}s:35:"Hook_config_vote_member_ip_restrict";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/vote_member_ip_restrict.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/vote_member_ip_restrict.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_vote_member_ip_restrict";s:7:"comment";b:1;}s:24:"Hook_config_vpn_password";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/vpn_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/vpn_password.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_vpn_password";s:7:"comment";b:1;}s:24:"Hook_config_vpn_username";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/vpn_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:45:"sources/hooks/systems/config/vpn_username.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:24:"Hook_config_vpn_username";s:7:"comment";b:1;}s:37:"Hook_config_web_notifications_enabled";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/web_notifications_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/web_notifications_enabled.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_web_notifications_enabled";s:7:"comment";b:1;}s:25:"Hook_config_website_email";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/website_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:46:"sources/hooks/systems/config/website_email.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:25:"Hook_config_website_email";s:7:"comment";b:1;}s:31:"Hook_config_webstandards_compat";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/webstandards_compat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:52:"sources/hooks/systems/config/webstandards_compat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:31:"Hook_config_webstandards_compat";s:7:"comment";b:1;}s:28:"Hook_config_webstandards_css";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/webstandards_css.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:49:"sources/hooks/systems/config/webstandards_css.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:28:"Hook_config_webstandards_css";s:7:"comment";b:1;}s:34:"Hook_config_webstandards_ext_files";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/webstandards_ext_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:55:"sources/hooks/systems/config/webstandards_ext_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:34:"Hook_config_webstandards_ext_files";s:7:"comment";b:1;}s:35:"Hook_config_webstandards_javascript";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/webstandards_javascript.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:56:"sources/hooks/systems/config/webstandards_javascript.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:35:"Hook_config_webstandards_javascript";s:7:"comment";b:1;}s:29:"Hook_config_webstandards_wcag";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/webstandards_wcag.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:50:"sources/hooks/systems/config/webstandards_wcag.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:29:"Hook_config_webstandards_wcag";s:7:"comment";b:1;}s:30:"Hook_config_webstandards_xhtml";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/webstandards_xhtml.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/config/webstandards_xhtml.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:30:"Hook_config_webstandards_xhtml";s:7:"comment";b:1;}s:27:"Hook_config_welcome_message";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/welcome_message.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:48:"sources/hooks/systems/config/welcome_message.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:27:"Hook_config_welcome_message";s:7:"comment";b:1;}s:32:"Hook_config_wiki_enable_children";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/wiki_enable_children.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:53:"sources/hooks/systems/config/wiki_enable_children.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:32:"Hook_config_wiki_enable_children";s:7:"comment";b:1;}s:37:"Hook_config_wiki_enable_content_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/wiki_enable_content_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:58:"sources/hooks/systems/config/wiki_enable_content_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:37:"Hook_config_wiki_enable_content_posts";s:7:"comment";b:1;}s:39:"Hook_config_wiki_show_stats_count_pages";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/wiki_show_stats_count_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/wiki_show_stats_count_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_wiki_show_stats_count_pages";s:7:"comment";b:1;}s:39:"Hook_config_wiki_show_stats_count_posts";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/wiki_show_stats_count_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:60:"sources/hooks/systems/config/wiki_show_stats_count_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:39:"Hook_config_wiki_show_stats_count_posts";s:7:"comment";b:1;}s:19:"Hook_config_wysiwyg";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/wysiwyg.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:40:"sources/hooks/systems/config/wysiwyg.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:19:"Hook_config_wysiwyg";s:7:"comment";b:1;}s:18:"Hook_config_yeehaw";a:3:{s:9:"functions";a:2:{s:11:"get_details";a:6:{s:8:"filename";s:39:"sources/hooks/systems/config/yeehaw.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_details";s:11:"description";s:47:"Gets the details relating to the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The details (null: disabled)";}}s:11:"get_default";a:6:{s:8:"filename";s:39:"sources/hooks/systems/config/yeehaw.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_default";s:11:"description";s:45:"Gets the default value for the config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:44:"The default value (null: option is disabled)";}}}s:4:"name";s:18:"Hook_config_yeehaw";s:7:"comment";b:1;}s:30:"Hook_content_meta_aware_author";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/author.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/author.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:30:"Hook_content_meta_aware_author";s:7:"comment";b:1;}s:30:"Hook_content_meta_aware_banner";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/banner.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/banner.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:30:"Hook_content_meta_aware_banner";s:7:"comment";b:1;}s:35:"Hook_content_meta_aware_banner_type";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:56:"sources/hooks/systems/content_meta_aware/banner_type.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/content_meta_aware/banner_type.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:35:"Hook_content_meta_aware_banner_type";s:7:"comment";b:1;}s:37:"Hook_content_meta_aware_calendar_type";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:58:"sources/hooks/systems/content_meta_aware/calendar_type.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/content_meta_aware/calendar_type.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:37:"Hook_content_meta_aware_calendar_type";s:7:"comment";b:1;}s:33:"Hook_content_meta_aware_catalogue";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/catalogue.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/catalogue.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:33:"Hook_content_meta_aware_catalogue";s:7:"comment";b:1;}s:42:"Hook_content_meta_aware_catalogue_category";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:63:"sources/hooks/systems/content_meta_aware/catalogue_category.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:63:"sources/hooks/systems/content_meta_aware/catalogue_category.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:42:"Hook_content_meta_aware_catalogue_category";s:7:"comment";b:1;}s:39:"Hook_content_meta_aware_catalogue_entry";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:60:"sources/hooks/systems/content_meta_aware/catalogue_entry.php";s:10:"parameters";a:2:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}i:1;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:47:"Catalogue name for entry (null: unknown / N/A).";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/systems/content_meta_aware/catalogue_entry.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:39:"Hook_content_meta_aware_catalogue_entry";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_chat";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/chat.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/chat.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_chat";s:7:"comment";b:1;}s:36:"Hook_content_meta_aware_comcode_page";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:57:"sources/hooks/systems/content_meta_aware/comcode_page.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:57:"sources/hooks/systems/content_meta_aware/comcode_page.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:36:"Hook_content_meta_aware_comcode_page";s:7:"comment";b:1;}s:32:"Hook_content_meta_aware_download";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:53:"sources/hooks/systems/content_meta_aware/download.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/content_meta_aware/download.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:32:"Hook_content_meta_aware_download";s:7:"comment";b:1;}s:41:"Hook_content_meta_aware_download_category";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:62:"sources/hooks/systems/content_meta_aware/download_category.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:62:"sources/hooks/systems/content_meta_aware/download_category.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:41:"Hook_content_meta_aware_download_category";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_event";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/event.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/event.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_event";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_forum";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/forum.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/forum.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_forum";s:7:"comment";b:1;}s:31:"Hook_content_meta_aware_gallery";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:52:"sources/hooks/systems/content_meta_aware/gallery.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/content_meta_aware/gallery.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:31:"Hook_content_meta_aware_gallery";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_group";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/group.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/group.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_group";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_image";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/image.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/image.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_image";s:7:"comment";b:1;}s:30:"Hook_content_meta_aware_member";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/member.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/content_meta_aware/member.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:30:"Hook_content_meta_aware_member";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_news";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/news.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/news.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_news";s:7:"comment";b:1;}s:37:"Hook_content_meta_aware_news_category";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:58:"sources/hooks/systems/content_meta_aware/news_category.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/content_meta_aware/news_category.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:37:"Hook_content_meta_aware_news_category";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_poll";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/poll.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/poll.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_poll";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_post";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/post.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/post.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_post";s:7:"comment";b:1;}s:28:"Hook_content_meta_aware_quiz";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/quiz.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/content_meta_aware/quiz.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:28:"Hook_content_meta_aware_quiz";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_topic";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/topic.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/topic.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_topic";s:7:"comment";b:1;}s:29:"Hook_content_meta_aware_video";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/video.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/content_meta_aware/video.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:29:"Hook_content_meta_aware_video";s:7:"comment";b:1;}s:33:"Hook_content_meta_aware_wiki_page";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/wiki_page.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/wiki_page.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:33:"Hook_content_meta_aware_wiki_page";s:7:"comment";b:1;}s:33:"Hook_content_meta_aware_wiki_post";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/wiki_post.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/content_meta_aware/wiki_post.php";s:10:"parameters";a:7:{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:32:"The database row for the content";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zone to display in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for content hooks. Renders a content box for an award/randomisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Results";}}}s:4:"name";s:33:"Hook_content_meta_aware_wiki_post";s:7:"comment";b:1;}s:17:"Hook_cron_backups";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:38:"sources/hooks/systems/cron/backups.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_cron_backups";s:7:"comment";b:1;}s:23:"Hook_cron_block_caching";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:44:"sources/hooks/systems/cron/block_caching.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Hook_cron_block_caching";s:7:"comment";b:1;}s:18:"Hook_cron_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:39:"sources/hooks/systems/cron/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Hook_cron_calendar";s:7:"comment";b:1;}s:34:"Hook_cron_catalogue_entry_timeouts";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:55:"sources/hooks/systems/cron/catalogue_entry_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:34:"Hook_cron_catalogue_entry_timeouts";s:7:"comment";b:1;}s:32:"Hook_cron_catalogue_view_reports";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:53:"sources/hooks/systems/cron/catalogue_view_reports.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:32:"Hook_cron_catalogue_view_reports";s:7:"comment";b:1;}s:23:"Hook_cron_cns_birthdays";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:44:"sources/hooks/systems/cron/cns_birthdays.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Hook_cron_cns_birthdays";s:7:"comment";b:1;}s:30:"Hook_cron_cns_confirm_reminder";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:51:"sources/hooks/systems/cron/cns_confirm_reminder.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Hook_cron_cns_confirm_reminder";s:7:"comment";b:1;}s:28:"Hook_cron_cns_welcome_emails";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:49:"sources/hooks/systems/cron/cns_welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Hook_cron_cns_welcome_emails";s:7:"comment";b:1;}s:25:"Hook_cron_content_reviews";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:46:"sources/hooks/systems/cron/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Hook_cron_content_reviews";s:7:"comment";b:1;}s:26:"Hook_cron_dynamic_firewall";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:47:"sources/hooks/systems/cron/dynamic_firewall.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:26:"Hook_cron_dynamic_firewall";s:7:"comment";b:1;}s:22:"Hook_cron_git_autopull";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:43:"sources/hooks/systems/cron/git_autopull.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:22:"Hook_cron_git_autopull";s:7:"comment";b:1;}s:31:"Hook_cron_group_member_timeouts";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:52:"sources/hooks/systems/cron/group_member_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:31:"Hook_cron_group_member_timeouts";s:7:"comment";b:1;}s:33:"Hook_cron_implicit_usergroup_sync";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:54:"sources/hooks/systems/cron/implicit_usergroup_sync.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:33:"Hook_cron_implicit_usergroup_sync";s:7:"comment";b:1;}s:28:"Hook_cron_ip_address_sharing";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:49:"sources/hooks/systems/cron/ip_address_sharing.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Hook_cron_ip_address_sharing";s:7:"comment";b:1;}s:22:"Hook_cron_leader_board";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:43:"sources/hooks/systems/cron/leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:22:"Hook_cron_leader_board";s:7:"comment";b:1;}s:20:"Hook_cron_mail_queue";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:41:"sources/hooks/systems/cron/mail_queue.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:20:"Hook_cron_mail_queue";s:7:"comment";b:1;}s:42:"Hook_cron_manual_subscription_notification";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:63:"sources/hooks/systems/cron/manual_subscription_notification.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:42:"Hook_cron_manual_subscription_notification";s:7:"comment";b:1;}s:30:"Hook_cron_newsletter_drip_send";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:51:"sources/hooks/systems/cron/newsletter_drip_send.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Hook_cron_newsletter_drip_send";s:7:"comment";b:1;}s:29:"Hook_cron_newsletter_periodic";a:3:{s:9:"functions";a:2:{s:3:"run";a:5:{s:8:"filename";s:50:"sources/hooks/systems/cron/newsletter_periodic.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}s:26:"newsletter_periodic_handle";a:6:{s:8:"filename";s:50:"sources/hooks/systems/cron/newsletter_periodic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"periodic_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"Details of periodic newsletter";s:11:"phpdoc_name";s:12:"periodic_row";}}s:4:"name";s:26:"newsletter_periodic_handle";s:11:"description";s:27:"Send a periodic newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:30:"Time was sent (null: not sent)";}}}s:4:"name";s:29:"Hook_cron_newsletter_periodic";s:7:"comment";b:1;}s:30:"Hook_cron_notification_digests";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:51:"sources/hooks/systems/cron/notification_digests.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Hook_cron_notification_digests";s:7:"comment";b:1;}s:16:"Hook_cron_oracle";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:37:"sources/hooks/systems/cron/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:16:"Hook_cron_oracle";s:7:"comment";b:1;}s:17:"Hook_cron_sitemap";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:38:"sources/hooks/systems/cron/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_cron_sitemap";s:7:"comment";b:1;}s:32:"Hook_cron_staff_checklist_notify";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:53:"sources/hooks/systems/cron/staff_checklist_notify.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:32:"Hook_cron_staff_checklist_notify";s:7:"comment";b:1;}s:21:"Hook_cron_stats_clean";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:42:"sources/hooks/systems/cron/stats_clean.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:21:"Hook_cron_stats_clean";s:7:"comment";b:1;}s:28:"Hook_cron_subscription_mails";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:49:"sources/hooks/systems/cron/subscription_mails.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Hook_cron_subscription_mails";s:7:"comment";b:1;}s:15:"Hook_cron_tasks";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:36:"sources/hooks/systems/cron/tasks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:15:"Hook_cron_tasks";s:7:"comment";b:1;}s:32:"Hook_cron_ticket_type_lead_times";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:53:"sources/hooks/systems/cron/ticket_type_lead_times.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:32:"Hook_cron_ticket_type_lead_times";s:7:"comment";b:1;}s:35:"Hook_cron_tickets_email_integration";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:56:"sources/hooks/systems/cron/tickets_email_integration.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:35:"Hook_cron_tickets_email_integration";s:7:"comment";b:1;}s:19:"Hook_cron_topic_pin";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:40:"sources/hooks/systems/cron/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:59:"Run function for CRON hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Hook_cron_topic_pin";s:7:"comment";b:1;}s:26:"Hook_ecommerce_cart_orders";a:3:{s:9:"functions";a:4:{s:12:"get_products";a:6:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_orders.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}i:1;a:7:{s:4:"name";s:6:"search";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:"Product being searched for (null: none).";s:11:"phpdoc_name";s:6:"search";}i:2;a:7:{s:4:"name";s:17:"search_item_names";s:7:"default";s:13:"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 $search refers to the item name rather than the product codename.";s:11:"phpdoc_name";s:17:"search_item_names";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}s:10:"member_for";a:6:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_orders.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:10:"member_for";s:11:"description";s:53:"Find the corresponding member to a given purchase ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:53:"The member (null: unknown / can't perform operation).";}}s:25:"get_product_dispatch_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_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:10:"SHORT_TEXT";s:11:"description";s:8:"Item ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:25:"get_product_dispatch_type";s:11:"description";s:197:"Function to return dispatch type of product.(this hook represents a cart order, so find all of it's sub products's dispatch type and decide cart order product's dispatch type - automatic or manual)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Dispatch type.";}}s:17:"set_needed_fields";a:6:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_orders.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Item ID.";s:11:"phpdoc_name";s:9:"item_name";}}s:4:"name";s:17:"set_needed_fields";s:11:"description";s:55:"Function to return order ID from formatted of order ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Dispatch type.";}}}s:4:"name";s:26:"Hook_ecommerce_cart_orders";s:7:"comment";b:1;}s:30:"Hook_ecommerce_catalogue_items";a:3:{s:9:"functions";a:16:{s:12:"get_products";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}i:1;a:7:{s:4:"name";s:6:"search";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:"Product being searched for (null: none).";s:11:"phpdoc_name";s:6:"search";}i:2;a:7:{s:4:"name";s:17:"search_item_names";s:7:"default";s:13:"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 $search refers to the item name rather than the product codename.";s:11:"phpdoc_name";s:17:"search_item_names";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}s:12:"is_available";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:3:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;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:57:"The member we are checking against (null: current meber).";s:11:"phpdoc_name";s:6:"member";}i:2;a:7:{s:4:"name";s:12:"req_quantity";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:20:"The number required.";s:11:"phpdoc_name";s:12:"req_quantity";}}s:4:"name";s:12:"is_available";s:11:"description";s:75:"Check whether the product codename is available for purchase by the member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:55:"The availability code (a ECOMMERCE_PRODUCT_* constant).";}}s:22:"get_available_quantity";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.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:7:"ID_TEXT";s:11:"description";s:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:7:{s:4:"name";s:26:"consider_own_cart_contents";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether to consider the contents of your own cart.";s:11:"phpdoc_name";s:26:"consider_own_cart_contents";}}s:4:"name";s:22:"get_available_quantity";s:11:"description";s:53:"Get currently available quantity of selected product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:26:"Quantity (null: no limit).";}}s:11:"get_message";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.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:24:"The product in question.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:11:"get_message";s:11:"description";s:46:"Get the message for use in the purchase wizard";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The message.";}}s:19:"get_product_details";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"pid";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:"Product ID (null: read from environment, product_id).";s:11:"phpdoc_name";s:3:"pid";}}s:4:"name";s:19:"get_product_details";s:11:"description";s:26:"Get the product's details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}s:11:"add_to_cart";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"product_det";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Array of product details.";s:11:"phpdoc_name";s:11:"product_det";}}s:4:"name";s:11:"add_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:9:"AUTO_LINK";s:11:"description";s:30:"Order ID of newly added order.";}}s:18:"add_purchase_order";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"product";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"Product ID.";s:11:"phpdoc_name";s:7:"product";}i:1;a:5:{s:4:"name";s:11:"product_det";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Product details.";s:11:"phpdoc_name";s:11:"product_det";}}s:4:"name";s:18:"add_purchase_order";s:11:"description";s:48:"Add order - (order coming from purchase module).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:9:"Order ID.";}}s:15:"show_cart_entry";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"shopping_cart";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Tempcode object of shopping cart result table.";s:11:"phpdoc_name";s:13:"shopping_cart";}i:1;a:5:{s:4:"name";s:5:"entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:42:"Details of new entry to the shopping cart.";s:11:"phpdoc_name";s:5:"entry";}}s:4:"name";s:15:"show_cart_entry";s:11:"description";s:27:"Show shopping cart entries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Tempcode object of shopping cart result table.";}}s:13:"calculate_tax";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"gross_cost";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:22:"Gross cost of product.";s:11:"phpdoc_name";s:10:"gross_cost";}i:1;a:5:{s:4:"name";s:14:"tax_percentage";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Tax in percentage.";s:11:"phpdoc_name";s:14:"tax_percentage";}}s:4:"name";s:13:"calculate_tax";s:11:"description";s:35:"Calculate tax of catalogue product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:31:"Calculated tax for the product.";}}s:23:"calculate_shipping_cost";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"item_weight";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Weight of product.";s:11:"phpdoc_name";s:11:"item_weight";}}s:4:"name";s:23:"calculate_shipping_cost";s:11:"description";s:35:"Calculate shipping cost of product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:41:"Calculated shipping cost for the product.";}}s:23:"calculate_product_price";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"item_price";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Weight of product.";s:11:"phpdoc_name";s:10:"item_price";}i:1;a:5:{s:4:"name";s:3:"tax";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Tax in percentage.";s:11:"phpdoc_name";s:3:"tax";}i:2;a:5:{s:4:"name";s:11:"item_weight";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Weight of item.";s:11:"phpdoc_name";s:11:"item_weight";}}s:4:"name";s:23:"calculate_product_price";s:11:"description";s:24:"Calculate product price.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:41:"Calculated shipping cost for the product.";}}s:17:"get_product_image";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{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:15:"Catalogue name.";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"Catalogue entry ID.";s:11:"phpdoc_name";s:8:"entry_id";}}s:4:"name";s:17:"get_product_image";s:11:"description";s:52:"Find product image for a specific catalogue product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:28:"Image name (null: no image).";}}s:12:"update_stock";a:5:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"Catalogue entry ID.";s:11:"phpdoc_name";s:8:"entry_id";}i:1;a:5:{s:4:"name";s:8:"quantity";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Quantity to deduct.";s:11:"phpdoc_name";s:8:"quantity";}}s:4:"name";s:12:"update_stock";s:11:"description";s:37:"Update stock levels after a purchase.";s:5:"flags";a:0:{}}s:25:"get_product_dispatch_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_product_dispatch_type";s:11:"description";s:44:"Function to return dispatch type of product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"Dispatch type (manual/automatic).";}}s:12:"product_info";a:6:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.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:11:"Product ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:12:"product_info";s:11:"description";s:28:"Return product info details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:20:"Product information.";}}s:29:"get_custom_product_map_fields";a:5:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.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:17:"Product entry ID.";s:11:"phpdoc_name";s:2:"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:37:"Map where product details are placed.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:29:"get_custom_product_map_fields";s:11:"description";s:40:"Get custom fields for ecommerce product.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Hook_ecommerce_catalogue_items";s:7:"comment";b:1;}s:23:"Hook_ecommerce_interest";a:3:{s:9:"functions";a:2:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/ecommerce/interest.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:12:"get_products";a:6:{s:8:"filename";s:44:"sources/hooks/systems/ecommerce/interest.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:23:"Hook_ecommerce_interest";s:7:"comment";b:1;}s:20:"Hook_ecommerce_other";a:3:{s:9:"functions";a:2:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/ecommerce/other.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:12:"get_products";a:6:{s:8:"filename";s:41:"sources/hooks/systems/ecommerce/other.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:20:"Hook_ecommerce_other";s:7:"comment";b:1;}s:18:"Hook_ecommerce_tax";a:3:{s:9:"functions";a:2:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/ecommerce/tax.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:12:"get_products";a:6:{s:8:"filename";s:39:"sources/hooks/systems/ecommerce/tax.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:18:"Hook_ecommerce_tax";s:7:"comment";b:1;}s:24:"Hook_ecommerce_usergroup";a:3:{s:9:"functions";a:6:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:10:"member_for";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:10:"member_for";s:11:"description";s:53:"Find the corresponding member to a given purchase ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:53:"The member (null: unknown / can't perform operation).";}}s:12:"get_products";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}s:11:"get_message";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.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:24:"The product in question.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:11:"get_message";s:11:"description";s:47:"Get the message for use in the purchase wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The message.";}}s:17:"get_needed_fields";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_needed_fields";s:11:"description";s:60:"Get fields that need to be filled in in the purchase wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:41:"The fields and message text (null: none).";}}s:12:"is_available";a:6:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.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:7:"ID_TEXT";s:11:"description";s:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:11:"The member.";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:12:"is_available";s:11:"description";s:75:"Check whether the product codename is available for purchase by the member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:55:"The availability code (a ECOMMERCE_PRODUCT_* constant).";}}}s:4:"name";s:24:"Hook_ecommerce_usergroup";s:7:"comment";b:1;}s:19:"Hook_ecommerce_wage";a:3:{s:9:"functions";a:2:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/wage.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:12:"get_products";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/wage.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:19:"Hook_ecommerce_wage";s:7:"comment";b:1;}s:19:"Hook_ecommerce_work";a:3:{s:9:"functions";a:3:{s:36:"get_identifier_manual_field_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/work.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:"Product codename.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:36:"get_identifier_manual_field_inputter";s:11:"description";s:163:"Function for administrators to pick an identifier (only used by admins, usually the identifier would be picked via some other means in the wider Composr codebase).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:73:"Input field in standard Tempcode format for fields (null: no identifier).";}}s:10:"member_for";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/work.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:10:"member_for";s:11:"description";s:53:"Find the corresponding member to a given purchase ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:53:"The member (null: unknown / can't perform operation).";}}s:12:"get_products";a:6:{s:8:"filename";s:40:"sources/hooks/systems/ecommerce/work.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:12:"get_products";s:11:"description";s:332:"Get the products handled by this eCommerce hook.IMPORTANT NOTE TO PROGRAMMERS: This function may depend only on the database, and not on get_member() or any GET/POST values.Such dependencies will break IPN, which works via a Guest and no dependable environment variables. It would also break manual transactions from the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A map of product name to list of product details.";}}}s:4:"name";s:19:"Hook_ecommerce_work";s:7:"comment";b:1;}s:11:"Hook_ccbill";a:3:{s:9:"functions";a:9:{s:14:"get_account_id";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_account_id";s:11:"description";s:25:"Get the CCBill account ID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The answer.";}}s:17:"generate_trans_id";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"generate_trans_id";s:11:"description";s:26:"Generate a transaction ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"A transaction ID.";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:5:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:7:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:11:"auto_cancel";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"subscription_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"ID of the subscription to cancel.";s:11:"phpdoc_name";s:15:"subscription_id";}}s:4:"name";s:11:"auto_cancel";s:11:"description";s:84:"Find whether the hook auto-cancels (if it does, auto cancel the given subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:65:"True: yes. False: no. (null: cancels via a user-URL-directioning)";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:7:"The fee";}}s:18:"handle_transaction";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"handle_transaction";s:11:"description";s:140:"Handle IPN's. The function may produce output, which would be returned to the Payment Gateway. The function may do transaction verification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:117:"A long tuple of collected data (null: no transaction; will only return null when not running the 'ecommerce' script).";}}s:22:"store_shipping_address";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/ccbill.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:9:"Order ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:22:"store_shipping_address";s:11:"description";s:34:"Store shipping address for orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"Address ID (null: No address record found).";}}}s:4:"name";s:11:"Hook_ccbill";s:7:"comment";b:1;}s:11:"Hook_paypal";a:3:{s:9:"functions";a:11:{s:20:"_get_payment_address";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_get_payment_address";s:11:"description";s:31:"Get the PayPal payment address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The answer.";}}s:20:"_get_remote_form_url";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_get_remote_form_url";s:11:"description";s:24:"Get the remote form URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The remote form URL.";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:5:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:7:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:11:"auto_cancel";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"subscription_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"ID of the subscription to cancel.";s:11:"phpdoc_name";s:15:"subscription_id";}}s:4:"name";s:11:"auto_cancel";s:11:"description";s:84:"Find whether the hook auto-cancels (if it does, auto cancel the given subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:65:"True: yes. False: no. (null: cancels via a user-URL-directioning)";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:7:"The fee";}}s:18:"handle_transaction";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"handle_transaction";s:11:"description";s:140:"Handle IPN's. The function may produce output, which would be returned to the Payment Gateway. The function may do transaction verification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:117:"A long tuple of collected data (null: no transaction; will only return null when not running the 'ecommerce' script).";}}s:28:"make_cart_transaction_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"items";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Items array.";s:11:"phpdoc_name";s:5:"items";}i:1;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Currency symbol.";s:11:"phpdoc_name";s:8:"currency";}i:2;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:9:"Order ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:28:"make_cart_transaction_button";s:11:"description";s:136:"Make a transaction (payment) button for multiple shopping cart items.Optional method, provides more detail than make_transaction_button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:22:"store_shipping_address";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.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:9:"Order ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:22:"store_shipping_address";s:11:"description";s:34:"Store shipping address for orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"Address ID (null: No address record found).";}}s:24:"get_callback_url_message";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/paypal.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_callback_url_message";s:11:"description";s:44:"Get the status message after a URL callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:21:"Message (null: none).";}}}s:4:"name";s:11:"Hook_paypal";s:7:"comment";b:1;}s:11:"Hook_secpay";a:3:{s:9:"functions";a:13:{s:13:"_get_username";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_get_username";s:11:"description";s:25:"Get the gateway username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The answer.";}}s:20:"_get_remote_form_url";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_get_remote_form_url";s:11:"description";s:24:"Get the remote form URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The remote form URL.";}}s:17:"generate_trans_id";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"generate_trans_id";s:11:"description";s:26:"Generate a transaction ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"A transaction ID.";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:5:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:31:"_translate_subscription_details";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:2:{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:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:1;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}}s:4:"name";s:31:"_translate_subscription_details";s:11:"description";s:49:"Find details for a subscription in secpay format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A tuple: the period in secpay units, the date of the first repeat.";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:7:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:11:"auto_cancel";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"subscription_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"ID of the subscription to cancel.";s:11:"phpdoc_name";s:15:"subscription_id";}}s:4:"name";s:11:"auto_cancel";s:11:"description";s:84:"Find whether the hook auto-cancels (if it does, auto cancel the given subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:65:"True: yes. False: no. (null: cancels via a user-URL-directioning)";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:8:"The fee.";}}s:32:"create_selection_list_card_types";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.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:7:"?string";s:11:"description";s:54:"The card type to select by default (null: don't care).";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:32:"create_selection_list_card_types";s:11:"description";s:25:"Get a list of card types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The list.";}}s:14:"do_transaction";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:8:"trans_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:40:"The transaction ID (null: generate one).";s:11:"phpdoc_name";s:8:"trans_id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"Cardholder name.";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:11:"card_number";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"Card number.";s:11:"phpdoc_name";s:11:"card_number";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"Transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The currency";s:11:"phpdoc_name";s:8:"currency";}i:5;a:5:{s:4:"name";s:11:"expiry_date";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"Card Expiry date.";s:11:"phpdoc_name";s:11:"expiry_date";}i:6;a:5:{s:4:"name";s:12:"issue_number";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Card Issue number.";s:11:"phpdoc_name";s:12:"issue_number";}i:7;a:5:{s:4:"name";s:10:"start_date";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"Card Start date.";s:11:"phpdoc_name";s:10:"start_date";}i:8;a:6:{s:4:"name";s:9:"card_type";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:10:"Card Type.";s:11:"phpdoc_name";s:9:"card_type";s:3:"set";s:106:""Visa" "Master Card" "Switch" "UK Maestro" "Maestro" "Solo" "Delta" "American Express" "Diners Card" "JCB"";}i:9;a:5:{s:4:"name";s:3:"cv2";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:34:"Card CV2 number (security number).";s:11:"phpdoc_name";s:3:"cv2";}i:10;a:7:{s:4:"name";s:6:"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:64:"The subscription length in the units. (null: not a subscription)";s:11:"phpdoc_name";s:6:"length";}i:11;a:8:{s:4:"name";s:12:"length_units";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:44:"The length units. (null: not a subscription)";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}}s:4:"name";s:14:"do_transaction";s:11:"description";s:22:"Perform a transaction.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:86:"A tuple: success (boolean), trans-ID (string), message (string), raw message (string).";}}s:18:"handle_transaction";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"handle_transaction";s:11:"description";s:140:"Handle IPN's. The function may produce output, which would be returned to the Payment Gateway. The function may do transaction verification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:117:"A long tuple of collected data (null: no transaction; will only return null when not running the 'ecommerce' script).";}}s:22:"store_shipping_address";a:6:{s:8:"filename";s:46:"sources/hooks/systems/ecommerce_via/secpay.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:9:"Order ID.";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:22:"store_shipping_address";s:11:"description";s:34:"Store shipping address for orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"Address ID (null: No address record found).";}}}s:4:"name";s:11:"Hook_secpay";s:7:"comment";b:1;}s:13:"Hook_worldpay";a:3:{s:9:"functions";a:12:{s:13:"_get_username";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_get_username";s:11:"description";s:25:"Get the gateway username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The answer.";}}s:20:"_get_remote_form_url";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_get_remote_form_url";s:11:"description";s:24:"Get the remote form URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The remote form URL.";}}s:9:"get_logos";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"get_logos";s:11:"description";s:62:"Get the card/gateway logos and other gateway-required details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The stuff.";}}s:17:"generate_trans_id";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"generate_trans_id";s:11:"description";s:26:"Generate a transaction ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"A transaction ID.";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:5:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:7:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The button.";}}s:11:"auto_cancel";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"subscription_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"ID of the subscription to cancel.";s:11:"phpdoc_name";s:15:"subscription_id";}}s:4:"name";s:11:"auto_cancel";s:11:"description";s:84:"Find whether the hook auto-cancels (if it does, auto cancel the given subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:65:"True: yes. False: no. (null: cancels via a user-URL-directioning)";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:8:"The fee.";}}s:18:"handle_transaction";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"handle_transaction";s:11:"description";s:140:"Handle IPN's. The function may produce output, which would be returned to the Payment Gateway. The function may do transaction verification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:117:"A long tuple of collected data (null: no transaction; will only return null when not running the 'ecommerce' script).";}}s:21:"show_payment_response";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"product";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Product.";s:11:"phpdoc_name";s:7:"product";}i:1;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}}s:4:"name";s:21:"show_payment_response";s:11:"description";s:85:"Show a payment response after IPN runs (for hooks that handle redirects in this way).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The response.";}}s:22:"store_shipping_address";a:6:{s:8:"filename";s:48:"sources/hooks/systems/ecommerce_via/worldpay.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:22:"store_shipping_address";s:11:"description";s:34:"Store shipping address for orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"Address ID (null: No address record found).";}}}s:4:"name";s:13:"Hook_worldpay";s:7:"comment";b:1;}s:18:"Hook_fields_author";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/author.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:18:"Hook_fields_author";s:7:"comment";b:1;}s:20:"Hook_fields_codename";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:16:"get_field_random";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/codename.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"field_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The field ID";s:11:"phpdoc_name";s:8:"field_id";}i:1;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:6:"string";s:11:"description";s:17:"The field default";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:16:"get_field_random";s:11:"description";s:44:"Get a fresh value for a random valued field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:20:"Hook_fields_codename";s:7:"comment";b:1;}s:17:"Hook_fields_color";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/color.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:17:"Hook_fields_color";s:7:"comment";b:1;}s:24:"Hook_fields_content_link";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/content_link.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:24:"Hook_fields_content_link";s:7:"comment";b:1;}s:30:"Hook_fields_content_link_multi";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:51:"sources/hooks/systems/fields/content_link_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:30:"Hook_fields_content_link_multi";s:7:"comment";b:1;}s:16:"Hook_fields_date";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:26:"get_search_filter_from_env";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:26:"get_search_filter_from_env";s:11:"description";s:48:"Get a search filter string from the environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Filter";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/date.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:16:"Hook_fields_date";s:7:"comment";b:1;}s:17:"Hook_fields_email";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/email.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:17:"Hook_fields_email";s:7:"comment";b:1;}s:17:"Hook_fields_float";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/float.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:17:"Hook_fields_float";s:7:"comment";b:1;}s:16:"Hook_fields_guid";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:14:"get_field_guid";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/guid.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_field_guid";s:11:"description";s:10:"Get a GUID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"The GUID";}}}s:4:"name";s:16:"Hook_fields_guid";s:7:"comment";b:1;}s:19:"Hook_fields_integer";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:24:"get_field_auto_increment";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/integer.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"field_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The field ID";s:11:"phpdoc_name";s:8:"field_id";}i:1;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:6:"string";s:11:"description";s:17:"The field default";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_auto_increment";s:11:"description";s:53:"Get a fresh value for an auto_increment valued field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:19:"Hook_fields_integer";s:7:"comment";b:1;}s:16:"Hook_fields_isbn";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/isbn.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:16:"Hook_fields_isbn";s:7:"comment";b:1;}s:21:"Hook_fields_just_date";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:26:"get_search_filter_from_env";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:26:"get_search_filter_from_env";s:11:"description";s:48:"Get a search filter string from the environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Filter";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_date.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_just_date";s:7:"comment";b:1;}s:21:"Hook_fields_just_time";a:3:{s:9:"functions";a:8:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:26:"get_search_filter_from_env";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:26:"get_search_filter_from_env";s:11:"description";s:48:"Get a search filter string from the environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Filter";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:10:"input_from";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/just_time.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"stub";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"Name of environment variable";s:11:"phpdoc_name";s:4:"stub";}i:1;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:43:"Use GET parameter instead of POST parameter";s:11:"phpdoc_name";s:3:"get";}}s:4:"name";s:10:"input_from";s:11:"description";s:13:"Input a value";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"String representation";}}}s:4:"name";s:21:"Hook_fields_just_time";s:7:"comment";b:1;}s:16:"Hook_fields_list";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_input_list_map";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:15:"dynamic_choices";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:110:"Whether to put custom choices from previous data back into the main list (null: decide based on field options)";s:11:"phpdoc_name";s:15:"dynamic_choices";}}s:4:"name";s:18:"get_input_list_map";s:11:"description";s:15:"Get field list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:4:"List";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/list.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:16:"Hook_fields_list";s:7:"comment";b:1;}s:22:"Hook_fields_list_multi";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_input_list_map";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:15:"dynamic_choices";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:110:"Whether to put custom choices from previous data back into the main list (null: decide based on field options)";s:11:"phpdoc_name";s:15:"dynamic_choices";}}s:4:"name";s:18:"get_input_list_map";s:11:"description";s:15:"Get field list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:4:"List";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/list_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:22:"Hook_fields_list_multi";s:7:"comment";b:1;}s:21:"Hook_fields_long_text";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/long_text.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_long_text";s:7:"comment";b:1;}s:22:"Hook_fields_long_trans";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}i:5;a:7:{s:4:"name";s:4:"last";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether this is the last field in the catalogue";s:11:"phpdoc_name";s:4:"last";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/long_trans.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:22:"Hook_fields_long_trans";s:7:"comment";b:1;}s:18:"Hook_fields_member";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/member.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:18:"Hook_fields_member";s:7:"comment";b:1;}s:24:"Hook_fields_member_multi";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/member_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:24:"Hook_fields_member_multi";s:7:"comment";b:1;}s:21:"Hook_fields_page_link";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/page_link.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_page_link";s:7:"comment";b:1;}s:20:"Hook_fields_password";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:41:"sources/hooks/systems/fields/password.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:20:"Hook_fields_password";s:7:"comment";b:1;}s:19:"Hook_fields_picture";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:40:"sources/hooks/systems/fields/picture.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Hook_fields_picture";s:7:"comment";b:1;}s:25:"Hook_fields_picture_multi";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:46:"sources/hooks/systems/fields/picture_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Hook_fields_picture_multi";s:7:"comment";b:1;}s:25:"Hook_fields_posting_field";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}i:5;a:7:{s:4:"name";s:4:"last";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether this is the last field in the catalogue";s:11:"phpdoc_name";s:4:"last";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:46:"sources/hooks/systems/fields/posting_field.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:25:"Hook_fields_posting_field";s:7:"comment";b:1;}s:21:"Hook_fields_reference";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"filter";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:69:"Only find if we can potential match this field type (null: no filter)";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/reference.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_reference";s:7:"comment";b:1;}s:27:"Hook_fields_reference_multi";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"filter";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:69:"Only find if we can potential match this field type (null: no filter)";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:48:"sources/hooks/systems/fields/reference_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:27:"Hook_fields_reference_multi";s:7:"comment";b:1;}s:22:"Hook_fields_short_text";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:43:"sources/hooks/systems/fields/short_text.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:22:"Hook_fields_short_text";s:7:"comment";b:1;}s:28:"Hook_fields_short_text_multi";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:49:"sources/hooks/systems/fields/short_text_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:28:"Hook_fields_short_text_multi";s:7:"comment";b:1;}s:23:"Hook_fields_short_trans";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/short_trans.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:23:"Hook_fields_short_trans";s:7:"comment";b:1;}s:29:"Hook_fields_short_trans_multi";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:2:"db";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:46:"Database connection (null: main site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:50:"sources/hooks/systems/fields/short_trans_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:29:"Hook_fields_short_trans_multi";s:7:"comment";b:1;}s:23:"Hook_fields_theme_image";a:3:{s:9:"functions";a:7:{s:15:"get_field_types";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_field_types";s:11:"description";s:166:"Find what field types this hook can serve. This method only needs to be defined if it is not serving a single field type with a name corresponding to the hook itself.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of field type to field type title";}}s:19:"get_search_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/theme_image.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:23:"Hook_fields_theme_image";s:7:"comment";b:1;}s:16:"Hook_fields_tick";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:37:"sources/hooks/systems/fields/tick.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:16:"Hook_fields_tick";s:7:"comment";b:1;}s:18:"Hook_fields_upload";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:39:"sources/hooks/systems/fields/upload.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Hook_fields_upload";s:7:"comment";b:1;}s:24:"Hook_fields_upload_multi";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:45:"sources/hooks/systems/fields/upload_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:24:"Hook_fields_upload_multi";s:7:"comment";b:1;}s:15:"Hook_fields_url";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:36:"sources/hooks/systems/fields/url.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:15:"Hook_fields_url";s:7:"comment";b:1;}s:21:"Hook_fields_url_multi";a:3:{s:9:"functions";a:6:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"The Tempcode for the input field (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:42:"sources/hooks/systems/fields/url_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}}s:4:"name";s:21:"Hook_fields_url_multi";s:7:"comment";b:1;}s:17:"Hook_fields_video";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}i:9;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:32:"Submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:38:"sources/hooks/systems/fields/video.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_fields_video";s:7:"comment";b:1;}s:23:"Hook_fields_video_multi";a:3:{s:9:"functions";a:7:{s:19:"get_search_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:19:"get_search_inputter";s:11:"description";s:46:"Get special Tempcode for inputting this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"Specially encoded input detail rows (null: nothing special)";}}s:26:"inputted_to_sql_for_search";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.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:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"inputted_to_sql_for_search";s:11:"description";s:54:"Get special SQL from POSTed parameters for this field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:24:"get_field_value_row_bits";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"The field details (null: new field)";s:11:"phpdoc_name";s:5:"field";}i:1;a:7:{s:4:"name";s:8:"required";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:83:"Whether a default value cannot be blank (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:8:"required";}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:7:"?string";s:11:"description";s:79:"The given default value as a string (null: don't "lock in" a new default value)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:24:"get_field_value_row_bits";s:11:"description";s:87:"Get some info bits relating to our field type, that helps us look it up / set defaults.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"Tuple of details (row-type,default-value-to-use,db row-type)";}}s:18:"render_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:2:"ev";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The raw value";s:11:"phpdoc_name";s:2:"ev";}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:20:"Position in fieldset";s:11:"phpdoc_name";s:1:"i";}i:3;a:5:{s:4:"name";s:11:"only_fields";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"List of fields the output is being limited to (null: N/A)";s:11:"phpdoc_name";s:11:"only_fields";}i:4;a:7:{s:4:"name";s:5:"table";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:33:"The table we store in (null: N/A)";s:11:"phpdoc_name";s:5:"table";}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:42:"The ID of the row in the table (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"id_field";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:45:"Name of the ID field in the table (null: N/A)";s:11:"phpdoc_name";s:8:"id_field";}i:7;a:7:{s:4:"name";s:14:"field_id_field";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:51:"Name of the field ID field in the table (null: N/A)";s:11:"phpdoc_name";s:14:"field_id_field";}i:8;a:7:{s:4:"name";s:9:"url_field";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:"Name of the URL field in the table (null: N/A)";s:11:"phpdoc_name";s:9:"url_field";}i:9;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:32:"Submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:18:"render_field_value";s:11:"description";s:46:"Convert a field value to something renderable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:35:"Rendered field (Tempcode or string)";}}s:18:"get_field_inputter";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_cf_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:8:"_cf_name";}i:1;a:5:{s:4:"name";s:15:"_cf_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The field description";s:11:"phpdoc_name";s:15:"_cf_description";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:12:"actual_value";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:50:"The actual current value of the field (null: none)";s:11:"phpdoc_name";s:12:"actual_value";}i:4;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether this is for a new entry";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:18:"get_field_inputter";s:11:"description";s:18:"Get form inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:108:"A pair: The Tempcode for the input field, Tempcode for hidden fields (null: skip the field - it's not input)";}}s:23:"inputted_to_field_value";a:6:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"editing";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we were editing (because on edit, it could be a fractional edit)";s:11:"phpdoc_name";s:7:"editing";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:10:"upload_dir";s:7:"default";s:18:"uploads/catalogues";s:11:"default_raw";s:20:"'uploads/catalogues'";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:105:"Where the files will be uploaded to (null: do not store an upload, return null if we would need to do so)";s:11:"phpdoc_name";s:10:"upload_dir";}i:3;a:7:{s:4:"name";s:9:"old_value";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:"Former value of field (null: none)";s:11:"phpdoc_name";s:9:"old_value";}}s:4:"name";s:23:"inputted_to_field_value";s:11:"description";s:55:"Find the posted value from the get_field_inputter field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The value (null: could not process)";}}s:7:"cleanup";a:5:{s:8:"filename";s:44:"sources/hooks/systems/fields/video_multi.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Current field value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"cleanup";s:11:"description";s:56:"The field is being deleted, so delete any necessary data";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Hook_fields_video_multi";s:7:"comment";b:1;}s:28:"Hook_login_provider_httpauth";a:3:{s:9:"functions";a:1:{s:9:"try_login";a:6:{s:8:"filename";s:50:"sources/hooks/systems/login_providers/httpauth.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:7:"?MEMBER";s:11:"description";s:72:"Member ID already detected as logged in (null: none). May be a guest ID.";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"try_login";s:11:"description";s:29:"Standard login provider hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:68:"Member ID now detected as logged in (null: none). May be a guest ID.";}}}s:4:"name";s:28:"Hook_login_provider_httpauth";s:7:"comment";b:1;}s:34:"Hook_media_rendering_audio_general";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_general.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_audio_general";s:7:"comment";b:1;}s:36:"Hook_media_rendering_audio_microsoft";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/audio_microsoft.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:36:"Hook_media_rendering_audio_microsoft";s:7:"comment";b:1;}s:34:"Hook_media_rendering_audio_websafe";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/audio_websafe.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_audio_websafe";s:7:"comment";b:1;}s:25:"Hook_media_rendering_code";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:46:"sources/hooks/systems/media_rendering/code.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:25:"Hook_media_rendering_code";s:7:"comment";b:1;}s:26:"Hook_media_rendering_email";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/email.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:26:"Hook_media_rendering_email";s:7:"comment";b:1;}s:26:"Hook_media_rendering_flash";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/flash.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:26:"Hook_media_rendering_flash";s:7:"comment";b:1;}s:30:"Hook_media_rendering_hyperlink";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/hyperlink.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:30:"Hook_media_rendering_hyperlink";s:7:"comment";b:1;}s:34:"Hook_media_rendering_image_websafe";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/image_websafe.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:7:{s:4:"name";s:21:"url_direct_filesystem";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:61:"Direct URL (not via a script) (null: just use the normal URL)";s:11:"phpdoc_name";s:21:"url_direct_filesystem";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_image_websafe";s:7:"comment";b:1;}s:27:"Hook_media_rendering_oembed";a:3:{s:9:"functions";a:9:{s:14:"get_type_label";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}i:1;a:7:{s:4:"name";s:12:"meta_details";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 media signature, so we can go on this on top of the mime-type (null: not known)";s:11:"phpdoc_name";s:12:"meta_details";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:19:"get_video_thumbnail";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Video URL";s:11:"phpdoc_name";s:7:"src_url";}}s:4:"name";s:19:"get_video_thumbnail";s:11:"description";s:49:"If we can handle this URL, get the thumbnail URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The thumbnail URL (null: no match).";}}s:22:"get_oembed_data_result";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:2:{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:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"Attributes (e.g. width, height)";s:11:"phpdoc_name";s:10:"attributes";}}s:4:"name";s:22:"get_oembed_data_result";s:11:"description";s:20:"Do an oEmbed lookup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:49:"Fully parsed/validated oEmbed result (null: fail)";}}s:6:"render";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}s:16:"_fallback_render";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:3;a:7:{s:4:"name";s:19:"link_captions_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:26:"Text to show the link with";s:11:"phpdoc_name";s:19:"link_captions_title";}}s:4:"name";s:16:"_fallback_render";s:11:"description";s:79:"Provide code to display what is at the URL, when we fail to render with oEmbed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}s:21:"_find_oembed_endpoint";a:6:{s:8:"filename";s:48:"sources/hooks/systems/media_rendering/oembed.php";s:10:"parameters";a:1:{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:35:"URL to find the oEmbed endpoint for";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:21:"_find_oembed_endpoint";s:11:"description";s:34:"Find an oEmbed endpoint for a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:30:"Endpoint UR (null: none found)";}}}s:4:"name";s:27:"Hook_media_rendering_oembed";s:7:"comment";b:1;}s:24:"Hook_media_rendering_pdf";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/pdf.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:24:"Hook_media_rendering_pdf";s:7:"comment";b:1;}s:30:"Hook_media_rendering_quicktime";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/quicktime.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:30:"Hook_media_rendering_quicktime";s:7:"comment";b:1;}s:30:"Hook_media_rendering_realaudio";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realaudio.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:30:"Hook_media_rendering_realaudio";s:7:"comment";b:1;}s:30:"Hook_media_rendering_realmedia";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:51:"sources/hooks/systems/media_rendering/realmedia.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:30:"Hook_media_rendering_realmedia";s:7:"comment";b:1;}s:24:"Hook_media_rendering_svg";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:45:"sources/hooks/systems/media_rendering/svg.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:24:"Hook_media_rendering_svg";s:7:"comment";b:1;}s:35:"Hook_media_rendering_video_facebook";a:3:{s:9:"functions";a:6:{s:14:"get_type_label";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:19:"get_video_thumbnail";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Video URL";s:11:"phpdoc_name";s:7:"src_url";}}s:4:"name";s:19:"get_video_thumbnail";s:11:"description";s:49:"If we can handle this URL, get the thumbnail URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The thumbnail URL (null: no match).";}}s:6:"render";a:6:{s:8:"filename";s:56:"sources/hooks/systems/media_rendering/video_facebook.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:35:"Hook_media_rendering_video_facebook";s:7:"comment";b:1;}s:34:"Hook_media_rendering_video_general";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_general.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_video_general";s:7:"comment";b:1;}s:36:"Hook_media_rendering_video_microsoft";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:57:"sources/hooks/systems/media_rendering/video_microsoft.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:36:"Hook_media_rendering_video_microsoft";s:7:"comment";b:1;}s:34:"Hook_media_rendering_video_websafe";a:3:{s:9:"functions";a:5:{s:14:"get_type_label";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:6:"render";a:6:{s:8:"filename";s:55:"sources/hooks/systems/media_rendering/video_websafe.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:34:"Hook_media_rendering_video_websafe";s:7:"comment";b:1;}s:26:"Hook_media_rendering_vimeo";a:3:{s:9:"functions";a:6:{s:14:"get_type_label";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:19:"get_video_thumbnail";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Video URL";s:11:"phpdoc_name";s:7:"src_url";}}s:4:"name";s:19:"get_video_thumbnail";s:11:"description";s:49:"If we can handle this URL, get the thumbnail URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The thumbnail URL (null: no match).";}}s:6:"render";a:6:{s:8:"filename";s:47:"sources/hooks/systems/media_rendering/vimeo.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:26:"Hook_media_rendering_vimeo";s:7:"comment";b:1;}s:28:"Hook_media_rendering_youtube";a:3:{s:9:"functions";a:6:{s:14:"get_type_label";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_type_label";s:11:"description";s:44:"Get the label for this media rendering type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The label";}}s:14:"get_media_type";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_media_type";s:11:"description";s:38:"Find the media types this hook serves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The media type(s), as a bitmask";}}s:20:"recognises_mime_type";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The mime type";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:20:"recognises_mime_type";s:11:"description";s:39:"See if we can recognise this mime type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:14:"recognises_url";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:1:{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:20:"URL to pattern match";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"recognises_url";s:11:"description";s:41:"See if we can recognise this URL pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"Recognition precedence";}}s:19:"get_video_thumbnail";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Video URL";s:11:"phpdoc_name";s:7:"src_url";}}s:4:"name";s:19:"get_video_thumbnail";s:11:"description";s:49:"If we can handle this URL, get the thumbnail URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The thumbnail URL (null: no match).";}}s:6:"render";a:6:{s:8:"filename";s:49:"sources/hooks/systems/media_rendering/youtube.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:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:6:"render";s:11:"description";s:72:"Provide code to display what is at the URL, in the most appropriate way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Rendered version";}}}s:4:"name";s:28:"Hook_media_rendering_youtube";s:7:"comment";b:1;}s:27:"Hook_notification_actionlog";a:3:{s:9:"functions";a:4:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/actionlog.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/actionlog.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/actionlog.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:27:"Hook_notification_actionlog";s:7:"comment";b:1;}s:46:"Hook_notification_adminzone_dashboard_accessed";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/adminzone_dashboard_accessed.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/adminzone_dashboard_accessed.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:46:"Hook_notification_adminzone_dashboard_accessed";s:7:"comment";b:1;}s:26:"Hook_notification_auto_ban";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/auto_ban.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/auto_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:26:"Hook_notification_auto_ban";s:7:"comment";b:1;}s:32:"Hook_notification_calendar_event";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/calendar_event.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:32:"Hook_notification_calendar_event";s:7:"comment";b:1;}s:35:"Hook_notification_calendar_reminder";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/calendar_reminder.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/calendar_reminder.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:35:"Hook_notification_calendar_reminder";s:7:"comment";b:1;}s:33:"Hook_notification_catalogue_entry";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/catalogue_entry.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:33:"Hook_notification_catalogue_entry";s:7:"comment";b:1;}s:40:"Hook_notification_catalogue_view_reports";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/catalogue_view_reports.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/catalogue_view_reports.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:40:"Hook_notification_catalogue_view_reports";s:7:"comment";b:1;}s:32:"Hook_notification_checklist_task";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/checklist_task.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/checklist_task.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_checklist_task";s:7:"comment";b:1;}s:30:"Hook_notification_cns_birthday";a:3:{s:9:"functions";a:3:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/cns_birthday.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/cns_birthday.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/cns_birthday.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:30:"Hook_notification_cns_birthday";s:7:"comment";b:1;}s:35:"Hook_notification_cns_choose_avatar";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/cns_choose_avatar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/cns_choose_avatar.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:35:"Hook_notification_cns_choose_avatar";s:7:"comment";b:1;}s:34:"Hook_notification_cns_choose_photo";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_choose_photo.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_choose_photo.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:34:"Hook_notification_cns_choose_photo";s:7:"comment";b:1;}s:38:"Hook_notification_cns_choose_signature";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/cns_choose_signature.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/cns_choose_signature.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:38:"Hook_notification_cns_choose_signature";s:7:"comment";b:1;}s:26:"Hook_notification_cns_club";a:3:{s:9:"functions";a:3:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/cns_club.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/cns_club.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/cns_club.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:26:"Hook_notification_cns_club";s:7:"comment";b:1;}s:37:"Hook_notification_cns_friend_birthday";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:59:"sources/hooks/systems/notifications/cns_friend_birthday.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:59:"sources/hooks/systems/notifications/cns_friend_birthday.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:37:"Hook_notification_cns_friend_birthday";s:7:"comment";b:1;}s:36:"Hook_notification_cns_group_declined";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/cns_group_declined.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/cns_group_declined.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:36:"Hook_notification_cns_group_declined";s:7:"comment";b:1;}s:40:"Hook_notification_cns_group_join_request";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/cns_group_join_request.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/cns_group_join_request.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:40:"Hook_notification_cns_group_join_request";s:7:"comment";b:1;}s:46:"Hook_notification_cns_group_join_request_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/cns_group_join_request_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/cns_group_join_request_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:46:"Hook_notification_cns_group_join_request_staff";s:7:"comment";b:1;}s:41:"Hook_notification_cns_member_joined_group";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/cns_member_joined_group.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:41:"Hook_notification_cns_member_joined_group";s:7:"comment";b:1;}s:45:"Hook_notification_cns_member_needs_validation";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:67:"sources/hooks/systems/notifications/cns_member_needs_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:45:"Hook_notification_cns_member_needs_validation";s:7:"comment";b:1;}s:32:"Hook_notification_cns_new_member";a:3:{s:9:"functions";a:3:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/cns_new_member.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/cns_new_member.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/cns_new_member.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:32:"Hook_notification_cns_new_member";s:7:"comment";b:1;}s:28:"Hook_notification_cns_new_pt";a:3:{s:9:"functions";a:3:{s:16:"allowed_settings";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/cns_new_pt.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/cns_new_pt.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/cns_new_pt.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:28:"Hook_notification_cns_new_pt";s:7:"comment";b:1;}s:38:"Hook_notification_cns_password_changed";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/cns_password_changed.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:38:"Hook_notification_cns_password_changed";s:7:"comment";b:1;}s:35:"Hook_notification_cns_rank_promoted";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/cns_rank_promoted.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:35:"Hook_notification_cns_rank_promoted";s:7:"comment";b:1;}s:27:"Hook_notification_cns_topic";a:3:{s:9:"functions";a:8:{s:19:"supports_categories";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:16:"allowed_settings";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:24:"get_default_auto_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:24:"get_default_auto_setting";s:11:"description";s:147:"Find the setting that members have for a notification code if they have done some action triggering automatic setting (e.g. posted within a topic).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Automatic setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:10:"_is_member";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:10:"_is_member";s:11:"description";s:101:"Find whether someone has permisson to view any notifications (yes) and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/cns_topic.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:27:"Hook_notification_cns_topic";s:7:"comment";b:1;}s:34:"Hook_notification_cns_topic_invite";a:3:{s:9:"functions";a:3:{s:16:"allowed_settings";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_topic_invite.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_topic_invite.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/cns_topic_invite.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:34:"Hook_notification_cns_topic_invite";s:7:"comment";b:1;}s:38:"Hook_notification_cns_username_changed";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/cns_username_changed.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:38:"Hook_notification_cns_username_changed";s:7:"comment";b:1;}s:44:"Hook_notification_cns_username_changed_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:66:"sources/hooks/systems/notifications/cns_username_changed_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:66:"sources/hooks/systems/notifications/cns_username_changed_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:44:"Hook_notification_cns_username_changed_staff";s:7:"comment";b:1;}s:32:"Hook_notification_comment_posted";a:3:{s:9:"functions";a:6:{s:19:"supports_categories";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:24:"get_default_auto_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:24:"get_default_auto_setting";s:11:"description";s:147:"Find the setting that members have for a notification code if they have done some action triggering automatic setting (e.g. posted within a topic).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Automatic setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/comment_posted.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:32:"Hook_notification_comment_posted";s:7:"comment";b:1;}s:33:"Hook_notification_content_reviews";a:3:{s:9:"functions";a:4:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/content_reviews.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/content_reviews.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/content_reviews.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:33:"Hook_notification_content_reviews";s:7:"comment";b:1;}s:35:"Hook_notification_content_validated";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:57:"sources/hooks/systems/notifications/content_validated.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:35:"Hook_notification_content_validated";s:7:"comment";b:1;}s:26:"Hook_notification_download";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/download.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:26:"Hook_notification_download";s:7:"comment";b:1;}s:32:"Hook_notification_error_occurred";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/error_occurred.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/error_occurred.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_error_occurred";s:7:"comment";b:1;}s:37:"Hook_notification_error_occurred_cron";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:59:"sources/hooks/systems/notifications/error_occurred_cron.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:59:"sources/hooks/systems/notifications/error_occurred_cron.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:37:"Hook_notification_error_occurred_cron";s:7:"comment";b:1;}s:45:"Hook_notification_error_occurred_missing_page";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:67:"sources/hooks/systems/notifications/error_occurred_missing_page.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:67:"sources/hooks/systems/notifications/error_occurred_missing_page.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:45:"Hook_notification_error_occurred_missing_page";s:7:"comment";b:1;}s:50:"Hook_notification_error_occurred_missing_reference";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:72:"sources/hooks/systems/notifications/error_occurred_missing_reference.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:72:"sources/hooks/systems/notifications/error_occurred_missing_reference.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:50:"Hook_notification_error_occurred_missing_reference";s:7:"comment";b:1;}s:60:"Hook_notification_error_occurred_missing_reference_important";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:82:"sources/hooks/systems/notifications/error_occurred_missing_reference_important.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:82:"sources/hooks/systems/notifications/error_occurred_missing_reference_important.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:60:"Hook_notification_error_occurred_missing_reference_important";s:7:"comment";b:1;}s:49:"Hook_notification_error_occurred_missing_resource";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:71:"sources/hooks/systems/notifications/error_occurred_missing_resource.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:71:"sources/hooks/systems/notifications/error_occurred_missing_resource.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:49:"Hook_notification_error_occurred_missing_resource";s:7:"comment";b:1;}s:36:"Hook_notification_error_occurred_rss";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/error_occurred_rss.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/error_occurred_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:36:"Hook_notification_error_occurred_rss";s:7:"comment";b:1;}s:26:"Hook_notification_filedump";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:48:"sources/hooks/systems/notifications/filedump.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:26:"Hook_notification_filedump";s:7:"comment";b:1;}s:31:"Hook_notification_gallery_entry";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:53:"sources/hooks/systems/notifications/gallery_entry.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:31:"Hook_notification_gallery_entry";s:7:"comment";b:1;}s:29:"Hook_notification_hack_attack";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/hack_attack.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/hack_attack.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:29:"Hook_notification_hack_attack";s:7:"comment";b:1;}s:28:"Hook_notification_im_invited";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/im_invited.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/im_invited.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:28:"Hook_notification_im_invited";s:7:"comment";b:1;}s:33:"Hook_notification_invited_content";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/invited_content.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:33:"Hook_notification_invited_content";s:7:"comment";b:1;}s:25:"Hook_notification_invoice";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:47:"sources/hooks/systems/notifications/invoice.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:47:"sources/hooks/systems/notifications/invoice.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:25:"Hook_notification_invoice";s:7:"comment";b:1;}s:36:"Hook_notification_ip_address_sharing";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ip_address_sharing.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ip_address_sharing.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:36:"Hook_notification_ip_address_sharing";s:7:"comment";b:1;}s:22:"Hook_notification_like";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/like.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:22:"Hook_notification_like";s:7:"comment";b:1;}s:32:"Hook_notification_low_disk_space";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/low_disk_space.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_low_disk_space";s:7:"comment";b:1;}s:27:"Hook_notification_low_stock";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/low_stock.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/low_stock.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:27:"Hook_notification_low_stock";s:7:"comment";b:1;}s:41:"Hook_notification_member_calendar_changes";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_calendar_changes.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:41:"Hook_notification_member_calendar_changes";s:7:"comment";b:1;}s:41:"Hook_notification_member_entered_chatroom";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/member_entered_chatroom.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:41:"Hook_notification_member_entered_chatroom";s:7:"comment";b:1;}s:32:"Hook_notification_member_mention";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/member_mention.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_member_mention";s:7:"comment";b:1;}s:27:"Hook_notification_messaging";a:3:{s:9:"functions";a:2:{s:19:"supports_categories";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/messaging.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:27:"Hook_notification_messaging";s:7:"comment";b:1;}s:34:"Hook_notification_needs_validation";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/needs_validation.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:34:"Hook_notification_needs_validation";s:7:"comment";b:1;}s:28:"Hook_notification_new_friend";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/new_friend.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/new_friend.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:28:"Hook_notification_new_friend";s:7:"comment";b:1;}s:27:"Hook_notification_new_order";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/new_order.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/notifications/new_order.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:27:"Hook_notification_new_order";s:7:"comment";b:1;}s:28:"Hook_notification_news_entry";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:50:"sources/hooks/systems/notifications/news_entry.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:28:"Hook_notification_news_entry";s:7:"comment";b:1;}s:34:"Hook_notification_order_dispatched";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/order_dispatched.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/order_dispatched.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:34:"Hook_notification_order_dispatched";s:7:"comment";b:1;}s:44:"Hook_notification_paid_subscription_messages";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:66:"sources/hooks/systems/notifications/paid_subscription_messages.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:66:"sources/hooks/systems/notifications/paid_subscription_messages.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:44:"Hook_notification_paid_subscription_messages";s:7:"comment";b:1;}s:34:"Hook_notification_payment_received";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/payment_received.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/payment_received.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:34:"Hook_notification_payment_received";s:7:"comment";b:1;}s:43:"Hook_notification_pointstore_request_custom";a:3:{s:9:"functions";a:4:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:65:"sources/hooks/systems/notifications/pointstore_request_custom.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:65:"sources/hooks/systems/notifications/pointstore_request_custom.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:65:"sources/hooks/systems/notifications/pointstore_request_custom.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:65:"sources/hooks/systems/notifications/pointstore_request_custom.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:43:"Hook_notification_pointstore_request_custom";s:7:"comment";b:1;}s:47:"Hook_notification_pointstore_request_forwarding";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:69:"sources/hooks/systems/notifications/pointstore_request_forwarding.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:69:"sources/hooks/systems/notifications/pointstore_request_forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:47:"Hook_notification_pointstore_request_forwarding";s:7:"comment";b:1;}s:41:"Hook_notification_pointstore_request_pop3";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/pointstore_request_pop3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/pointstore_request_pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:41:"Hook_notification_pointstore_request_pop3";s:7:"comment";b:1;}s:42:"Hook_notification_pointstore_request_quota";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:64:"sources/hooks/systems/notifications/pointstore_request_quota.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:64:"sources/hooks/systems/notifications/pointstore_request_quota.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:42:"Hook_notification_pointstore_request_quota";s:7:"comment";b:1;}s:29:"Hook_notification_poll_chosen";a:3:{s:9:"functions";a:3:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/poll_chosen.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/poll_chosen.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:51:"sources/hooks/systems/notifications/poll_chosen.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:29:"Hook_notification_poll_chosen";s:7:"comment";b:1;}s:30:"Hook_notification_quiz_results";a:3:{s:9:"functions";a:4:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/quiz_results.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/quiz_results.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/quiz_results.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/quiz_results.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:30:"Hook_notification_quiz_results";s:7:"comment";b:1;}s:38:"Hook_notification_receive_points_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/receive_points_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:60:"sources/hooks/systems/notifications/receive_points_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:38:"Hook_notification_receive_points_staff";s:7:"comment";b:1;}s:33:"Hook_notification_received_points";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/received_points.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/received_points.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:33:"Hook_notification_received_points";s:7:"comment";b:1;}s:41:"Hook_notification_service_cancelled_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/service_cancelled_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:63:"sources/hooks/systems/notifications/service_cancelled_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:41:"Hook_notification_service_cancelled_staff";s:7:"comment";b:1;}s:40:"Hook_notification_service_paid_for_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/service_paid_for_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:62:"sources/hooks/systems/notifications/service_paid_for_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:40:"Hook_notification_service_paid_for_staff";s:7:"comment";b:1;}s:34:"Hook_notification_spam_check_block";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/spam_check_block.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/spam_check_block.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:34:"Hook_notification_spam_check_block";s:7:"comment";b:1;}s:33:"Hook_notification_staff_checklist";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/staff_checklist.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:55:"sources/hooks/systems/notifications/staff_checklist.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:33:"Hook_notification_staff_checklist";s:7:"comment";b:1;}s:46:"Hook_notification_subscription_cancelled_staff";a:3:{s:9:"functions";a:2:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/subscription_cancelled_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:68:"sources/hooks/systems/notifications/subscription_cancelled_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:46:"Hook_notification_subscription_cancelled_staff";s:7:"comment";b:1;}s:32:"Hook_notification_task_completed";a:3:{s:9:"functions";a:1:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/notifications/task_completed.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}}s:4:"name";s:32:"Hook_notification_task_completed";s:7:"comment";b:1;}s:39:"Hook_notification_ticket_assigned_staff";a:3:{s:9:"functions";a:10:{s:19:"supports_categories";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:16:"allowed_settings";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:24:"get_default_auto_setting";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:24:"get_default_auto_setting";s:11:"description";s:147:"Find the setting that members have for a notification code if they have done some action triggering automatic setting (e.g. posted within a topic).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Automatic setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:9:"_is_staff";a:6:{s:8:"filename";s:61:"sources/hooks/systems/notifications/ticket_assigned_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:98:"Find whether someone has permission to view staff notifications and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:39:"Hook_notification_ticket_assigned_staff";s:7:"comment";b:1;}s:34:"Hook_notification_ticket_new_staff";a:3:{s:9:"functions";a:8:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:19:"supports_categories";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:9:"_is_staff";a:6:{s:8:"filename";s:56:"sources/hooks/systems/notifications/ticket_new_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:98:"Find whether someone has permission to view staff notifications and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:34:"Hook_notification_ticket_new_staff";s:7:"comment";b:1;}s:30:"Hook_notification_ticket_reply";a:3:{s:9:"functions";a:2:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/ticket_reply.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:52:"sources/hooks/systems/notifications/ticket_reply.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:30:"Hook_notification_ticket_reply";s:7:"comment";b:1;}s:36:"Hook_notification_ticket_reply_staff";a:3:{s:9:"functions";a:6:{s:19:"get_initial_setting";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:9:"_is_staff";a:6:{s:8:"filename";s:58:"sources/hooks/systems/notifications/ticket_reply_staff.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:98:"Find whether someone has permission to view staff notifications and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:36:"Hook_notification_ticket_reply_staff";s:7:"comment";b:1;}s:22:"Hook_notification_wiki";a:3:{s:9:"functions";a:5:{s:19:"supports_categories";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:58:"Standard function to create the standardised category tree";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:18:"list_handled_codes";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:44:"sources/hooks/systems/notifications/wiki.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}}s:4:"name";s:22:"Hook_notification_wiki";s:7:"comment";b:1;}s:35:"Hook_page_groupings_aggregate_types";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/page_groupings/aggregate_types.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:35:"Hook_page_groupings_aggregate_types";s:7:"comment";b:1;}s:27:"Hook_page_groupings_authors";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/authors.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_authors";s:7:"comment";b:1;}s:26:"Hook_page_groupings_backup";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/backup.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_backup";s:7:"comment";b:1;}s:27:"Hook_page_groupings_banners";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/banners.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_banners";s:7:"comment";b:1;}s:29:"Hook_page_groupings_bookmarks";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/bookmarks.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_bookmarks";s:7:"comment";b:1;}s:28:"Hook_page_groupings_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/page_groupings/calendar.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:28:"Hook_page_groupings_calendar";s:7:"comment";b:1;}s:30:"Hook_page_groupings_catalogues";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/catalogues.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_catalogues";s:7:"comment";b:1;}s:24:"Hook_page_groupings_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/chat.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_chat";s:7:"comment";b:1;}s:29:"Hook_page_groupings_cns_forum";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/cns_forum.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_cns_forum";s:7:"comment";b:1;}s:38:"Hook_page_groupings_collaboration_zone";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/page_groupings/collaboration_zone.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:38:"Hook_page_groupings_collaboration_zone";s:7:"comment";b:1;}s:28:"Hook_page_groupings_commandr";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/page_groupings/commandr.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:28:"Hook_page_groupings_commandr";s:7:"comment";b:1;}s:24:"Hook_page_groupings_core";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/core.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_core";s:7:"comment";b:1;}s:34:"Hook_page_groupings_custom_comcode";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/page_groupings/custom_comcode.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:34:"Hook_page_groupings_custom_comcode";s:7:"comment";b:1;}s:27:"Hook_page_groupings_debrand";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/debrand.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_debrand";s:7:"comment";b:1;}s:29:"Hook_page_groupings_downloads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/downloads.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_downloads";s:7:"comment";b:1;}s:29:"Hook_page_groupings_ecommerce";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/ecommerce.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_ecommerce";s:7:"comment";b:1;}s:28:"Hook_page_groupings_filedump";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/page_groupings/filedump.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:28:"Hook_page_groupings_filedump";s:7:"comment";b:1;}s:29:"Hook_page_groupings_galleries";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/galleries.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_galleries";s:7:"comment";b:1;}s:29:"Hook_page_groupings_help_page";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/help_page.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_help_page";s:7:"comment";b:1;}s:26:"Hook_page_groupings_import";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/import.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_import";s:7:"comment";b:1;}s:28:"Hook_page_groupings_language";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/page_groupings/language.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:28:"Hook_page_groupings_language";s:7:"comment";b:1;}s:24:"Hook_page_groupings_ldap";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/ldap.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_ldap";s:7:"comment";b:1;}s:29:"Hook_page_groupings_messaging";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/messaging.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_messaging";s:7:"comment";b:1;}s:23:"Hook_page_groupings_msn";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/page_groupings/msn.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:23:"Hook_page_groupings_msn";s:7:"comment";b:1;}s:24:"Hook_page_groupings_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/news.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_news";s:7:"comment";b:1;}s:30:"Hook_page_groupings_newsletter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/newsletter.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_newsletter";s:7:"comment";b:1;}s:33:"Hook_page_groupings_notifications";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/page_groupings/notifications.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:33:"Hook_page_groupings_notifications";s:7:"comment";b:1;}s:27:"Hook_page_groupings_phpinfo";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/phpinfo.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_phpinfo";s:7:"comment";b:1;}s:26:"Hook_page_groupings_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/points.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_points";s:7:"comment";b:1;}s:30:"Hook_page_groupings_pointstore";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/pointstore.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_pointstore";s:7:"comment";b:1;}s:25:"Hook_page_groupings_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/page_groupings/polls.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:25:"Hook_page_groupings_polls";s:7:"comment";b:1;}s:24:"Hook_page_groupings_quiz";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/quiz.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_quiz";s:7:"comment";b:1;}s:26:"Hook_page_groupings_quotes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/quotes.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_quotes";s:7:"comment";b:1;}s:33:"Hook_page_groupings_realtime_rain";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/page_groupings/realtime_rain.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:33:"Hook_page_groupings_realtime_rain";s:7:"comment";b:1;}s:29:"Hook_page_groupings_recommend";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/page_groupings/recommend.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:29:"Hook_page_groupings_recommend";s:7:"comment";b:1;}s:26:"Hook_page_groupings_search";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/page_groupings/search.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:26:"Hook_page_groupings_search";s:7:"comment";b:1;}s:31:"Hook_page_groupings_setupwizard";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/page_groupings/setupwizard.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:31:"Hook_page_groupings_setupwizard";s:7:"comment";b:1;}s:23:"Hook_page_groupings_ssl";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/page_groupings/ssl.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:23:"Hook_page_groupings_ssl";s:7:"comment";b:1;}s:25:"Hook_page_groupings_staff";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/page_groupings/staff.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:25:"Hook_page_groupings_staff";s:7:"comment";b:1;}s:25:"Hook_page_groupings_stats";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/page_groupings/stats.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:25:"Hook_page_groupings_stats";s:7:"comment";b:1;}s:41:"Hook_page_groupings_supermember_directory";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:62:"sources/hooks/systems/page_groupings/supermember_directory.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:41:"Hook_page_groupings_supermember_directory";s:7:"comment";b:1;}s:31:"Hook_page_groupings_themewizard";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/page_groupings/themewizard.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:31:"Hook_page_groupings_themewizard";s:7:"comment";b:1;}s:27:"Hook_page_groupings_tickets";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/page_groupings/tickets.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:27:"Hook_page_groupings_tickets";s:7:"comment";b:1;}s:30:"Hook_page_groupings_trackbacks";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/trackbacks.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_trackbacks";s:7:"comment";b:1;}s:31:"Hook_page_groupings_unvalidated";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/page_groupings/unvalidated.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:31:"Hook_page_groupings_unvalidated";s:7:"comment";b:1;}s:24:"Hook_page_groupings_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/page_groupings/wiki.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:24:"Hook_page_groupings_wiki";s:7:"comment";b:1;}s:30:"Hook_page_groupings_wordfilter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/page_groupings/wordfilter.php";s:10:"parameters";a:2:{i:0;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:42:"Member ID to run as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"extensive_docs";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to use extensive documentation tooltips, rather than short summaries";s:11:"phpdoc_name";s:14:"extensive_docs";}}s:4:"name";s:3:"run";s:11:"description";s:103:"Run function for do_next_menu hooks. They find links to put on standard navigation menus of the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:109:"List of tuple of links (page grouping, icon, do-next-style linking data), label, help (optional) and/or nulls";}}}s:4:"name";s:30:"Hook_page_groupings_wordfilter";s:7:"comment";b:1;}s:19:"Hook_preview_banner";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:40:"sources/hooks/systems/preview/banner.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/preview/banner.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:19:"Hook_preview_banner";s:7:"comment";b:1;}s:26:"Hook_preview_block_comcode";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/block_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/block_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:26:"Hook_preview_block_comcode";s:7:"comment";b:1;}s:21:"Hook_preview_calendar";a:3:{s:9:"functions";a:1:{s:7:"applies";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}}s:4:"name";s:21:"Hook_preview_calendar";s:7:"comment";b:1;}s:26:"Hook_preview_calendar_type";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/calendar_type.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/calendar_type.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:26:"Hook_preview_calendar_type";s:7:"comment";b:1;}s:25:"Hook_preview_cns_emoticon";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:46:"sources/hooks/systems/preview/cns_emoticon.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/preview/cns_emoticon.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:25:"Hook_preview_cns_emoticon";s:7:"comment";b:1;}s:21:"Hook_preview_cns_post";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/cns_post.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/cns_post.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:21:"Hook_preview_cns_post";s:7:"comment";b:1;}s:26:"Hook_preview_cns_signature";a:3:{s:9:"functions";a:1:{s:7:"applies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/preview/cns_signature.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:131:"Quartet: Whether it applies, the attachment ID type, whether the forum DB is used [optional], list of fields to limit to [optional]";}}}s:4:"name";s:26:"Hook_preview_cns_signature";s:7:"comment";b:1;}s:30:"Hook_preview_cns_welcome_email";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/preview/cns_welcome_email.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/preview/cns_welcome_email.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:30:"Hook_preview_cns_welcome_email";s:7:"comment";b:1;}s:25:"Hook_preview_comcode_page";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:46:"sources/hooks/systems/preview/comcode_page.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:131:"Quartet: Whether it applies, the attachment ID type, whether the forum DB is used [optional], list of fields to limit to [optional]";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/preview/comcode_page.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:25:"Hook_preview_comcode_page";s:7:"comment";b:1;}s:24:"Hook_preview_comcode_tag";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/preview/comcode_tag.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/preview/comcode_tag.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:24:"Hook_preview_comcode_tag";s:7:"comment";b:1;}s:21:"Hook_preview_comments";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/comments.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/comments.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:21:"Hook_preview_comments";s:7:"comment";b:1;}s:27:"Hook_preview_custom_comcode";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/preview/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/preview/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:27:"Hook_preview_custom_comcode";s:7:"comment";b:1;}s:21:"Hook_preview_download";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/download.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/preview/download.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:21:"Hook_preview_download";s:7:"comment";b:1;}s:18:"Hook_preview_image";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:39:"sources/hooks/systems/preview/image.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/preview/image.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:18:"Hook_preview_image";s:7:"comment";b:1;}s:17:"Hook_preview_news";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/news.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/news.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:17:"Hook_preview_news";s:7:"comment";b:1;}s:17:"Hook_preview_poll";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/poll.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/poll.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:17:"Hook_preview_poll";s:7:"comment";b:1;}s:17:"Hook_preview_quiz";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/preview/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:17:"Hook_preview_quiz";s:7:"comment";b:1;}s:24:"Hook_preview_setupwizard";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/preview/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/preview/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:24:"Hook_preview_setupwizard";s:7:"comment";b:1;}s:31:"Hook_preview_setupwizard_blocks";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/preview/setupwizard_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/preview/setupwizard_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:31:"Hook_preview_setupwizard_blocks";s:7:"comment";b:1;}s:19:"Hook_preview_ticket";a:3:{s:9:"functions";a:1:{s:7:"applies";a:6:{s:8:"filename";s:40:"sources/hooks/systems/preview/ticket.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:131:"Quartet: Whether it applies, the attachment ID type, whether the forum DB is used [optional], list of fields to limit to [optional]";}}}s:4:"name";s:19:"Hook_preview_ticket";s:7:"comment";b:1;}s:18:"Hook_preview_video";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:39:"sources/hooks/systems/preview/video.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/preview/video.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:18:"Hook_preview_video";s:7:"comment";b:1;}s:22:"Hook_preview_wiki_page";a:3:{s:9:"functions";a:1:{s:7:"applies";a:6:{s:8:"filename";s:43:"sources/hooks/systems/preview/wiki_page.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}}s:4:"name";s:22:"Hook_preview_wiki_page";s:7:"comment";b:1;}s:22:"Hook_preview_wiki_post";a:3:{s:9:"functions";a:2:{s:7:"applies";a:6:{s:8:"filename";s:43:"sources/hooks/systems/preview/wiki_post.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"applies";s:11:"description";s:39:"Find whether this preview hook applies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"Triplet: Whether it applies, the attachment ID type, whether the forum DB is used [optional]";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/preview/wiki_post.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:31:"Run function for preview hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: The preview, the updated post Comcode";}}}s:4:"name";s:22:"Hook_preview_wiki_post";s:7:"comment";b:1;}s:24:"Hook_profiles_tabs_about";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:45:"sources/hooks/systems/profiles_tabs/about.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:45:"sources/hooks/systems/profiles_tabs/about.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents NULL, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:24:"Hook_profiles_tabs_about";s:7:"comment";b:1;}s:23:"Hook_profiles_tabs_blog";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:44:"sources/hooks/systems/profiles_tabs/blog.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:44:"sources/hooks/systems/profiles_tabs/blog.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:23:"Hook_profiles_tabs_blog";s:7:"comment";b:1;}s:23:"Hook_profiles_tabs_edit";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:44:"sources/hooks/systems/profiles_tabs/edit.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:44:"sources/hooks/systems/profiles_tabs/edit.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:23:"Hook_profiles_tabs_edit";s:7:"comment";b:1;}s:26:"Hook_profiles_tabs_friends";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:47:"sources/hooks/systems/profiles_tabs/friends.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:47:"sources/hooks/systems/profiles_tabs/friends.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:26:"Hook_profiles_tabs_friends";s:7:"comment";b:1;}s:28:"Hook_profiles_tabs_galleries";a:3:{s:9:"functions";a:3:{s:9:"is_active";a:6:{s:8:"filename";s:49:"sources/hooks/systems/profiles_tabs/galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:27:"find_num_personal_galleries";a:6:{s:8:"filename";s:49:"sources/hooks/systems/profiles_tabs/galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"member_id_of";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:20:"The ID of the member";s:11:"phpdoc_name";s:12:"member_id_of";}}s:4:"name";s:27:"find_num_personal_galleries";s:11:"description";s:46:"Find number of personal galleries of a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:28:"Number of personal galleries";}}s:10:"render_tab";a:6:{s:8:"filename";s:49:"sources/hooks/systems/profiles_tabs/galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:28:"Hook_profiles_tabs_galleries";s:7:"comment";b:1;}s:25:"Hook_profiles_tabs_points";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:46:"sources/hooks/systems/profiles_tabs/points.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:46:"sources/hooks/systems/profiles_tabs/points.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:25:"Hook_profiles_tabs_points";s:7:"comment";b:1;}s:24:"Hook_profiles_tabs_posts";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:45:"sources/hooks/systems/profiles_tabs/posts.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:45:"sources/hooks/systems/profiles_tabs/posts.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:24:"Hook_profiles_tabs_posts";s:7:"comment";b:1;}s:22:"Hook_profiles_tabs_pts";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:43:"sources/hooks/systems/profiles_tabs/pts.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:43:"sources/hooks/systems/profiles_tabs/pts.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:22:"Hook_profiles_tabs_pts";s:7:"comment";b:1;}s:27:"Hook_profiles_tabs_warnings";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:48:"sources/hooks/systems/profiles_tabs/warnings.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:48:"sources/hooks/systems/profiles_tabs/warnings.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:38:"Render function for profile tab hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: The tab title, the tab contents, the suggested tab order, the icon";}}}s:4:"name";s:27:"Hook_profiles_tabs_warnings";s:7:"comment";b:1;}s:30:"Hook_profiles_tabs_edit_avatar";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:51:"sources/hooks/systems/profiles_tabs_edit/avatar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:51:"sources/hooks/systems/profiles_tabs_edit/avatar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:30:"Hook_profiles_tabs_edit_avatar";s:7:"comment";b:1;}s:30:"Hook_profiles_tabs_edit_delete";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:51:"sources/hooks/systems/profiles_tabs_edit/delete.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:51:"sources/hooks/systems/profiles_tabs_edit/delete.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:30:"Hook_profiles_tabs_edit_delete";s:7:"comment";b:1;}s:37:"Hook_profiles_tabs_edit_notifications";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:58:"sources/hooks/systems/profiles_tabs_edit/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:58:"sources/hooks/systems/profiles_tabs_edit/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:37:"Hook_profiles_tabs_edit_notifications";s:7:"comment";b:1;}s:29:"Hook_profiles_tabs_edit_photo";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:50:"sources/hooks/systems/profiles_tabs_edit/photo.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:50:"sources/hooks/systems/profiles_tabs_edit/photo.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:29:"Hook_profiles_tabs_edit_photo";s:7:"comment";b:1;}s:31:"Hook_profiles_tabs_edit_privacy";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:52:"sources/hooks/systems/profiles_tabs_edit/privacy.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:52:"sources/hooks/systems/profiles_tabs_edit/privacy.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:31:"Hook_profiles_tabs_edit_privacy";s:7:"comment";b:1;}s:31:"Hook_profiles_tabs_edit_profile";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:52:"sources/hooks/systems/profiles_tabs_edit/profile.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:52:"sources/hooks/systems/profiles_tabs_edit/profile.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:31:"Hook_profiles_tabs_edit_profile";s:7:"comment";b:1;}s:32:"Hook_profiles_tabs_edit_settings";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:53:"sources/hooks/systems/profiles_tabs_edit/settings.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:53:"sources/hooks/systems/profiles_tabs_edit/settings.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:32:"Hook_profiles_tabs_edit_settings";s:7:"comment";b:1;}s:33:"Hook_profiles_tabs_edit_signature";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:54:"sources/hooks/systems/profiles_tabs_edit/signature.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:54:"sources/hooks/systems/profiles_tabs_edit/signature.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:33:"Hook_profiles_tabs_edit_signature";s:7:"comment";b:1;}s:29:"Hook_profiles_tabs_edit_title";a:3:{s:9:"functions";a:2:{s:9:"is_active";a:6:{s:8:"filename";s:50:"sources/hooks/systems/profiles_tabs_edit/title.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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:9:"is_active";s:11:"description";s:33:"Find whether this hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether this hook is active";}}s:10:"render_tab";a:6:{s:8:"filename";s:50:"sources/hooks/systems/profiles_tabs_edit/title.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;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";}i:2;a:7:{s:4:"name";s:25:"leave_to_ajax_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to leave the tab contents null, if tis hook supports it, so that AJAX can load it later";s:11:"phpdoc_name";s:25:"leave_to_ajax_if_possible";}}s:4:"name";s:10:"render_tab";s:11:"description";s:44:"Render function for profile tabs edit hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:211:"A tuple: The tab title, the tab body text (may be blank), the tab fields, extra JavaScript (may be blank) the suggested tab order, hidden fields (optional) (null: if $leave_to_ajax_if_possible was set), the icon";}}}s:4:"name";s:29:"Hook_profiles_tabs_edit_title";s:7:"comment";b:1;}s:28:"Hook_realtime_rain_actionlog";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/realtime_rain/actionlog.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:28:"Hook_realtime_rain_actionlog";s:7:"comment";b:1;}s:26:"Hook_realtime_rain_banners";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/realtime_rain/banners.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:26:"Hook_realtime_rain_banners";s:7:"comment";b:1;}s:27:"Hook_realtime_rain_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/realtime_rain/calendar.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:27:"Hook_realtime_rain_calendar";s:7:"comment";b:1;}s:23:"Hook_realtime_rain_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/realtime_rain/chat.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:23:"Hook_realtime_rain_chat";s:7:"comment";b:1;}s:22:"Hook_realtime_rain_cns";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/realtime_rain/cns.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:22:"Hook_realtime_rain_cns";s:7:"comment";b:1;}s:28:"Hook_realtime_rain_ecommerce";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/realtime_rain/ecommerce.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:28:"Hook_realtime_rain_ecommerce";s:7:"comment";b:1;}s:23:"Hook_realtime_rain_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/realtime_rain/news.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:23:"Hook_realtime_rain_news";s:7:"comment";b:1;}s:25:"Hook_realtime_rain_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/realtime_rain/points.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:25:"Hook_realtime_rain_points";s:7:"comment";b:1;}s:24:"Hook_realtime_rain_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/realtime_rain/polls.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:24:"Hook_realtime_rain_polls";s:7:"comment";b:1;}s:28:"Hook_realtime_rain_recommend";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/realtime_rain/recommend.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:28:"Hook_realtime_rain_recommend";s:7:"comment";b:1;}s:25:"Hook_realtime_rain_search";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/realtime_rain/search.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:25:"Hook_realtime_rain_search";s:7:"comment";b:1;}s:27:"Hook_realtime_rain_security";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/realtime_rain/security.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:27:"Hook_realtime_rain_security";s:7:"comment";b:1;}s:24:"Hook_realtime_rain_stats";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/realtime_rain/stats.php";s:10:"parameters";a:2:{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:20:"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:18:"End of time range.";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:37:"Run function for realtime-rain hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A list of template parameter sets for rendering a 'drop'.";}}}s:4:"name";s:24:"Hook_realtime_rain_stats";s:7:"comment";b:1;}s:48:"Hook_resource_meta_aware_aggregate_type_instance";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:69:"sources/hooks/systems/resource_meta_aware/aggregate_type_instance.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:48:"Hook_resource_meta_aware_aggregate_type_instance";s:7:"comment";b:1;}s:35:"Hook_resource_meta_aware_award_type";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:56:"sources/hooks/systems/resource_meta_aware/award_type.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:35:"Hook_resource_meta_aware_award_type";s:7:"comment";b:1;}s:28:"Hook_resource_meta_aware_cpf";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/systems/resource_meta_aware/cpf.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:28:"Hook_resource_meta_aware_cpf";s:7:"comment";b:1;}s:43:"Hook_resource_meta_aware_custom_comcode_tag";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:64:"sources/hooks/systems/resource_meta_aware/custom_comcode_tag.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:43:"Hook_resource_meta_aware_custom_comcode_tag";s:7:"comment";b:1;}s:41:"Hook_resource_meta_aware_download_licence";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:62:"sources/hooks/systems/resource_meta_aware/download_licence.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:41:"Hook_resource_meta_aware_download_licence";s:7:"comment";b:1;}s:33:"Hook_resource_meta_aware_emoticon";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/systems/resource_meta_aware/emoticon.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:33:"Hook_resource_meta_aware_emoticon";s:7:"comment";b:1;}s:39:"Hook_resource_meta_aware_forum_grouping";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:60:"sources/hooks/systems/resource_meta_aware/forum_grouping.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:39:"Hook_resource_meta_aware_forum_grouping";s:7:"comment";b:1;}s:29:"Hook_resource_meta_aware_menu";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/resource_meta_aware/menu.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:29:"Hook_resource_meta_aware_menu";s:7:"comment";b:1;}s:34:"Hook_resource_meta_aware_menu_item";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:55:"sources/hooks/systems/resource_meta_aware/menu_item.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:34:"Hook_resource_meta_aware_menu_item";s:7:"comment";b:1;}s:41:"Hook_resource_meta_aware_multi_moderation";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:62:"sources/hooks/systems/resource_meta_aware/multi_moderation.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:41:"Hook_resource_meta_aware_multi_moderation";s:7:"comment";b:1;}s:35:"Hook_resource_meta_aware_newsletter";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:56:"sources/hooks/systems/resource_meta_aware/newsletter.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:35:"Hook_resource_meta_aware_newsletter";s:7:"comment";b:1;}s:46:"Hook_resource_meta_aware_newsletter_subscriber";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:67:"sources/hooks/systems/resource_meta_aware/newsletter_subscriber.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:46:"Hook_resource_meta_aware_newsletter_subscriber";s:7:"comment";b:1;}s:44:"Hook_resource_meta_aware_periodic_newsletter";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:65:"sources/hooks/systems/resource_meta_aware/periodic_newsletter.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:44:"Hook_resource_meta_aware_periodic_newsletter";s:7:"comment";b:1;}s:38:"Hook_resource_meta_aware_post_template";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:59:"sources/hooks/systems/resource_meta_aware/post_template.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:38:"Hook_resource_meta_aware_post_template";s:7:"comment";b:1;}s:36:"Hook_resource_meta_aware_ticket_type";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:57:"sources/hooks/systems/resource_meta_aware/ticket_type.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:36:"Hook_resource_meta_aware_ticket_type";s:7:"comment";b:1;}s:47:"Hook_resource_meta_aware_usergroup_subscription";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:68:"sources/hooks/systems/resource_meta_aware/usergroup_subscription.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:47:"Hook_resource_meta_aware_usergroup_subscription";s:7:"comment";b:1;}s:38:"Hook_resource_meta_aware_welcome_email";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:59:"sources/hooks/systems/resource_meta_aware/welcome_email.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:38:"Hook_resource_meta_aware_welcome_email";s:7:"comment";b:1;}s:29:"Hook_resource_meta_aware_zone";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/resource_meta_aware/zone.php";s:10:"parameters";a:1:{i:0;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:47:"The zone to link through to (null: autodetect).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:4:"info";s:11:"description";s:123:"Get content type details. Provides information to allow task reporting, randomisation, and add-screen linking, to function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:48:"Map of award content-type info (null: disabled).";}}}s:4:"name";s:29:"Hook_resource_meta_aware_zone";s:7:"comment";b:1;}s:29:"Hook_rss_admin_recent_actions";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/rss/admin_recent_actions.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:29:"Hook_rss_admin_recent_actions";s:7:"comment";b:1;}s:16:"Hook_rss_authors";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:37:"sources/hooks/systems/rss/authors.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:16:"Hook_rss_authors";s:7:"comment";b:1;}s:17:"Hook_rss_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/rss/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:17:"Hook_rss_calendar";s:7:"comment";b:1;}s:19:"Hook_rss_catalogues";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/rss/catalogues.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:19:"Hook_rss_catalogues";s:7:"comment";b:1;}s:13:"Hook_rss_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:34:"sources/hooks/systems/rss/chat.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:13:"Hook_rss_chat";s:7:"comment";b:1;}s:22:"Hook_rss_cns_birthdays";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/rss/cns_birthdays.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:22:"Hook_rss_cns_birthdays";s:7:"comment";b:1;}s:22:"Hook_rss_cns_forumview";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/rss/cns_forumview.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:22:"Hook_rss_cns_forumview";s:7:"comment";b:1;}s:20:"Hook_rss_cns_members";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/rss/cns_members.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:20:"Hook_rss_cns_members";s:7:"comment";b:1;}s:27:"Hook_rss_cns_private_topics";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/rss/cns_private_topics.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:27:"Hook_rss_cns_private_topics";s:7:"comment";b:1;}s:22:"Hook_rss_cns_topicview";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/rss/cns_topicview.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:22:"Hook_rss_cns_topicview";s:7:"comment";b:1;}s:26:"Hook_rss_cns_unread_topics";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/rss/cns_unread_topics.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:26:"Hook_rss_cns_unread_topics";s:7:"comment";b:1;}s:22:"Hook_rss_comcode_pages";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/rss/comcode_pages.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:22:"Hook_rss_comcode_pages";s:7:"comment";b:1;}s:17:"Hook_rss_comments";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/rss/comments.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"full_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:10:"full_title";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:17:"Hook_rss_comments";s:7:"comment";b:1;}s:18:"Hook_rss_downloads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/rss/downloads.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:18:"Hook_rss_downloads";s:7:"comment";b:1;}s:17:"Hook_rss_filedump";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/systems/rss/filedump.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:17:"Hook_rss_filedump";s:7:"comment";b:1;}s:18:"Hook_rss_galleries";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/rss/galleries.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:18:"Hook_rss_galleries";s:7:"comment";b:1;}s:13:"Hook_rss_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:34:"sources/hooks/systems/rss/news.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:13:"Hook_rss_news";s:7:"comment";b:1;}s:15:"Hook_rss_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:36:"sources/hooks/systems/rss/points.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:15:"Hook_rss_points";s:7:"comment";b:1;}s:14:"Hook_rss_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:35:"sources/hooks/systems/rss/polls.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:14:"Hook_rss_polls";s:7:"comment";b:1;}s:16:"Hook_rss_tickets";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:37:"sources/hooks/systems/rss/tickets.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:16:"Hook_rss_tickets";s:7:"comment";b:1;}s:26:"Hook_rss_web_notifications";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/rss/web_notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:26:"Hook_rss_web_notifications";s:7:"comment";b:1;}s:13:"Hook_rss_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:34:"sources/hooks/systems/rss/wiki.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"_filters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A list of categories we accept from";s:11:"phpdoc_name";s:8:"_filters";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:53:"Cutoff time, before which we do not show results from";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:6:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"Prefix that represents the template set we use";s:11:"phpdoc_name";s:6:"prefix";s:3:"set";s:10:"RSS_ ATOM_";}i:3;a:5:{s:4:"name";s:11:"date_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:85:"The standard format of date to use for the syndication type represented in the prefix";s:11:"phpdoc_name";s:11:"date_string";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The maximum number of entries to return, ordering by date";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:3:"run";s:11:"description";s:27:"Run function for RSS hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A pair: The main syndication section, and a title (null: error)";}}}s:4:"name";s:13:"Hook_rss_wiki";s:7:"comment";b:1;}s:19:"Hook_sitemap_author";a:3:{s:9:"functions";a:2:{s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/author.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/author.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:19:"Hook_sitemap_author";s:7:"comment";b:1;}s:19:"Hook_sitemap_banner";a:3:{s:9:"functions";a:4:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/banner.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/banner.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/banner.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}s:17:"_find_theme_image";a:5:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/banner.php";s:10:"parameters";a:2:{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:18:"Calendar type row.";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:6:"struct";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"Target structure.";s:11:"phpdoc_name";s:6:"struct";}}s:4:"name";s:17:"_find_theme_image";s:11:"description";s:45:"Find the image for a position in the Sitemap.";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Hook_sitemap_banner";s:7:"comment";b:1;}s:22:"Hook_sitemap_bookmarks";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/bookmarks.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/bookmarks.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/bookmarks.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:22:"Hook_sitemap_bookmarks";s:7:"comment";b:1;}s:26:"Hook_sitemap_calendar_type";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/calendar_type.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/calendar_type.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/calendar_type.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:26:"Hook_sitemap_calendar_type";s:7:"comment";b:1;}s:22:"Hook_sitemap_catalogue";a:3:{s:9:"functions";a:4:{s:17:"handles_page_link";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/catalogue.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:18:"get_privilege_page";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/catalogue.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/catalogue.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/catalogue.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:22:"Hook_sitemap_catalogue";s:7:"comment";b:1;}s:31:"Hook_sitemap_catalogue_category";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/catalogue_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/catalogue_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:31:"Hook_sitemap_catalogue_category";s:7:"comment";b:1;}s:28:"Hook_sitemap_catalogue_entry";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/catalogue_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/catalogue_entry.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:28:"Hook_sitemap_catalogue_entry";s:7:"comment";b:1;}s:17:"Hook_sitemap_chat";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/chat.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/chat.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_chat";s:7:"comment";b:1;}s:25:"Hook_sitemap_comcode_page";a:3:{s:9:"functions";a:2:{s:17:"handles_page_link";a:6:{s:8:"filename";s:46:"sources/hooks/systems/sitemap/comcode_page.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:8:"get_node";a:6:{s:8:"filename";s:46:"sources/hooks/systems/sitemap/comcode_page.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:25:"Hook_sitemap_comcode_page";s:7:"comment";b:1;}s:28:"Hook_sitemap_config_category";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/config_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/config_category.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:49:"sources/hooks/systems/sitemap/config_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:28:"Hook_sitemap_config_category";s:7:"comment";b:1;}s:21:"Hook_sitemap_download";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:42:"sources/hooks/systems/sitemap/download.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:42:"sources/hooks/systems/sitemap/download.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:21:"Hook_sitemap_download";s:7:"comment";b:1;}s:30:"Hook_sitemap_download_category";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:51:"sources/hooks/systems/sitemap/download_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:51:"sources/hooks/systems/sitemap/download_category.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:51:"sources/hooks/systems/sitemap/download_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:30:"Hook_sitemap_download_category";s:7:"comment";b:1;}s:24:"Hook_sitemap_entry_point";a:3:{s:9:"functions";a:2:{s:17:"handles_page_link";a:6:{s:8:"filename";s:45:"sources/hooks/systems/sitemap/entry_point.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:8:"get_node";a:6:{s:8:"filename";s:45:"sources/hooks/systems/sitemap/entry_point.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:24:"Hook_sitemap_entry_point";s:7:"comment";b:1;}s:18:"Hook_sitemap_event";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/event.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/event.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_event";s:7:"comment";b:1;}s:18:"Hook_sitemap_forum";a:3:{s:9:"functions";a:5:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:9:"is_active";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:17:"handles_page_link";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/forum.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_forum";s:7:"comment";b:1;}s:20:"Hook_sitemap_gallery";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:41:"sources/hooks/systems/sitemap/gallery.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:41:"sources/hooks/systems/sitemap/gallery.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:41:"sources/hooks/systems/sitemap/gallery.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:20:"Hook_sitemap_gallery";s:7:"comment";b:1;}s:18:"Hook_sitemap_group";a:3:{s:9:"functions";a:3:{s:9:"is_active";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/group.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/group.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/group.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_group";s:7:"comment";b:1;}s:18:"Hook_sitemap_image";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/image.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/image.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_image";s:7:"comment";b:1;}s:19:"Hook_sitemap_member";a:3:{s:9:"functions";a:3:{s:9:"is_active";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/member.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/member.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/member.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:19:"Hook_sitemap_member";s:7:"comment";b:1;}s:17:"Hook_sitemap_news";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/news.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_news";s:7:"comment";b:1;}s:26:"Hook_sitemap_news_category";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/news_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/news_category.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/news_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:26:"Hook_sitemap_news_category";s:7:"comment";b:1;}s:17:"Hook_sitemap_page";a:3:{s:9:"functions";a:2:{s:17:"handles_page_link";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/page.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/page.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_page";s:7:"comment";b:1;}s:26:"Hook_sitemap_page_grouping";a:3:{s:9:"functions";a:2:{s:17:"handles_page_link";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/page_grouping.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:8:"get_node";a:6:{s:8:"filename";s:47:"sources/hooks/systems/sitemap/page_grouping.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:14:"orphaned_pages";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:14:"orphaned_pages";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:26:"Hook_sitemap_page_grouping";s:7:"comment";b:1;}s:17:"Hook_sitemap_poll";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/poll.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/poll.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/poll.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_poll";s:7:"comment";b:1;}s:31:"Hook_sitemap_privilege_category";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/privilege_category.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/privilege_category.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:52:"sources/hooks/systems/sitemap/privilege_category.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:31:"Hook_sitemap_privilege_category";s:7:"comment";b:1;}s:17:"Hook_sitemap_quiz";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/quiz.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/quiz.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_quiz";s:7:"comment";b:1;}s:17:"Hook_sitemap_root";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/root.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/root.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/root.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_root";s:7:"comment";b:1;}s:19:"Hook_sitemap_search";a:3:{s:9:"functions";a:3:{s:17:"handles_page_link";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/search.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/search.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:40:"sources/hooks/systems/sitemap/search.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:19:"Hook_sitemap_search";s:7:"comment";b:1;}s:18:"Hook_sitemap_topic";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/topic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:9:"is_active";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/topic.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/topic.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_topic";s:7:"comment";b:1;}s:18:"Hook_sitemap_video";a:3:{s:9:"functions";a:2:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/video.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:8:"get_node";a:6:{s:8:"filename";s:39:"sources/hooks/systems/sitemap/video.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:18:"Hook_sitemap_video";s:7:"comment";b:1;}s:22:"Hook_sitemap_wiki_page";a:3:{s:9:"functions";a:3:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/wiki_page.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/wiki_page.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:161:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by Google sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:195:"Find details of a virtual position in the sitemap. Virtual positions have no structure of their own, but can find child structures to be absorbed down the tree. We do this for modularity reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:43:"sources/hooks/systems/sitemap/wiki_page.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:22:"Hook_sitemap_wiki_page";s:7:"comment";b:1;}s:17:"Hook_sitemap_zone";a:3:{s:9:"functions";a:4:{s:18:"get_privilege_page";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/zone.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:17:"handles_page_link";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/zone.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:39:"extract_child_page_link_permission_pair";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/zone.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:39:"extract_child_page_link_permission_pair";s:11:"description";s:73:"Convert a page-link to a category ID and category permission module type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The pair (null: permission modules not handled)";}}s:8:"get_node";a:6:{s:8:"filename";s:38:"sources/hooks/systems/sitemap/zone.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}}s:4:"name";s:17:"Hook_sitemap_zone";s:7:"comment";b:1;}s:24:"Hook_snippet_backup_size";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/snippets/backup_size.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:24:"Hook_snippet_backup_size";s:7:"comment";b:1;}s:18:"Hook_snippet_block";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/snippets/block.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:18:"Hook_snippet_block";s:7:"comment";b:1;}s:40:"Hook_snippet_calendar_recurrence_suggest";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:62:"sources/hooks/systems/snippets/calendar_recurrence_suggest.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:40:"Hook_snippet_calendar_recurrence_suggest";s:7:"comment";b:1;}s:26:"Hook_snippet_captcha_wrong";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/snippets/captcha_wrong.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:26:"Hook_snippet_captcha_wrong";s:7:"comment";b:1;}s:34:"Hook_snippet_checklist_task_manage";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/snippets/checklist_task_manage.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:34:"Hook_snippet_checklist_task_manage";s:7:"comment";b:1;}s:21:"Hook_snippet_commandr";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/snippets/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:21:"Hook_snippet_commandr";s:7:"comment";b:1;}s:21:"Hook_snippet_comments";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/snippets/comments.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:21:"Hook_snippet_comments";s:7:"comment";b:1;}s:18:"Hook_snippet_count";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/snippets/count.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:18:"Hook_snippet_count";s:7:"comment";b:1;}s:30:"Hook_snippet_css_compile__text";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/snippets/css_compile__text.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:30:"Hook_snippet_css_compile__text";s:7:"comment";b:1;}s:26:"Hook_snippet_exists_banner";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/snippets/exists_banner.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:26:"Hook_snippet_exists_banner";s:7:"comment";b:1;}s:31:"Hook_snippet_exists_banner_type";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/snippets/exists_banner_type.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:31:"Hook_snippet_exists_banner_type";s:7:"comment";b:1;}s:29:"Hook_snippet_exists_catalogue";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/snippets/exists_catalogue.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:29:"Hook_snippet_exists_catalogue";s:7:"comment";b:1;}s:25:"Hook_snippet_exists_email";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/snippets/exists_email.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:25:"Hook_snippet_exists_email";s:7:"comment";b:1;}s:28:"Hook_snippet_exists_emoticon";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/snippets/exists_emoticon.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:28:"Hook_snippet_exists_emoticon";s:7:"comment";b:1;}s:27:"Hook_snippet_exists_gallery";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/snippets/exists_gallery.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:27:"Hook_snippet_exists_gallery";s:7:"comment";b:1;}s:23:"Hook_snippet_exists_tag";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/snippets/exists_tag.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:23:"Hook_snippet_exists_tag";s:7:"comment";b:1;}s:25:"Hook_snippet_exists_theme";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/snippets/exists_theme.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:25:"Hook_snippet_exists_theme";s:7:"comment";b:1;}s:29:"Hook_snippet_exists_usergroup";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/snippets/exists_usergroup.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:29:"Hook_snippet_exists_usergroup";s:7:"comment";b:1;}s:24:"Hook_snippet_exists_zone";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/snippets/exists_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:24:"Hook_snippet_exists_zone";s:7:"comment";b:1;}s:29:"Hook_snippet_im_friends_rejig";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/snippets/im_friends_rejig.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:29:"Hook_snippet_im_friends_rejig";s:7:"comment";b:1;}s:27:"Hook_snippet_invite_missing";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/snippets/invite_missing.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:27:"Hook_snippet_invite_missing";s:7:"comment";b:1;}s:28:"Hook_snippet_management_menu";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/snippets/management_menu.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:28:"Hook_snippet_management_menu";s:7:"comment";b:1;}s:27:"Hook_snippet_member_tooltip";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/snippets/member_tooltip.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:98:"Standard modular run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:27:"Hook_snippet_member_tooltip";s:7:"comment";b:1;}s:30:"Hook_snippet_password_strength";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/snippets/password_strength.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:30:"Hook_snippet_password_strength";s:7:"comment";b:1;}s:24:"Hook_snippet_profile_tab";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/snippets/profile_tab.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:24:"Hook_snippet_profile_tab";s:7:"comment";b:1;}s:19:"Hook_snippet_rating";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/snippets/rating.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:19:"Hook_snippet_rating";s:7:"comment";b:1;}s:31:"Hook_snippet_realtime_rain_load";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/snippets/realtime_rain_load.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:31:"Hook_snippet_realtime_rain_load";s:7:"comment";b:1;}s:33:"Hook_snippet_themewizard_equation";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/snippets/themewizard_equation.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:81:"Run function for snippet hooks. Generates XHTML to insert into a page using AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The snippet";}}}s:4:"name";s:33:"Hook_snippet_themewizard_equation";s:7:"comment";b:1;}s:15:"Hook_startup_im";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:36:"sources/hooks/systems/startup/im.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:17:"Run startup code.";s:5:"flags";a:0:{}}}s:4:"name";s:15:"Hook_startup_im";s:7:"comment";b:1;}s:37:"Hook_startup_notification_poller_init";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:58:"sources/hooks/systems/startup/notification_poller_init.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:17:"Run startup code.";s:5:"flags";a:0:{}}}s:4:"name";s:37:"Hook_startup_notification_poller_init";s:7:"comment";b:1;}s:29:"Hook_symbol_BETA_CSS_PROPERTY";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/symbols/BETA_CSS_PROPERTY.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:29:"Hook_symbol_BETA_CSS_PROPERTY";s:7:"comment";b:1;}s:21:"Hook_symbol_CART_LINK";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/symbols/CART_LINK.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:21:"Hook_symbol_CART_LINK";s:7:"comment";b:1;}s:44:"Hook_symbol_CATALOGUE_ENTRY_ALL_FIELD_VALUES";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:66:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_ALL_FIELD_VALUES.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:44:"Hook_symbol_CATALOGUE_ENTRY_ALL_FIELD_VALUES";s:7:"comment";b:1;}s:36:"Hook_symbol_CATALOGUE_ENTRY_BACKREFS";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_BACKREFS.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:36:"Hook_symbol_CATALOGUE_ENTRY_BACKREFS";s:7:"comment";b:1;}s:39:"Hook_symbol_CATALOGUE_ENTRY_FIELD_VALUE";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_FIELD_VALUE.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:39:"Hook_symbol_CATALOGUE_ENTRY_FIELD_VALUE";s:7:"comment";b:1;}s:45:"Hook_symbol_CATALOGUE_ENTRY_FIELD_VALUE_PLAIN";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:67:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_FIELD_VALUE_PLAIN.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:45:"Hook_symbol_CATALOGUE_ENTRY_FIELD_VALUE_PLAIN";s:7:"comment";b:1;}s:31:"Hook_symbol_CATALOGUE_ENTRY_FOR";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/symbols/CATALOGUE_ENTRY_FOR.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:31:"Hook_symbol_CATALOGUE_ENTRY_FOR";s:7:"comment";b:1;}s:19:"Hook_symbol_CHAT_IM";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/symbols/CHAT_IM.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:19:"Hook_symbol_CHAT_IM";s:7:"comment";b:1;}s:25:"Hook_symbol_CKEDITOR_PATH";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/symbols/CKEDITOR_PATH.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:25:"Hook_symbol_CKEDITOR_PATH";s:7:"comment";b:1;}s:24:"Hook_symbol_COMCODE_TAGS";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/symbols/COMCODE_TAGS.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:24:"Hook_symbol_COMCODE_TAGS";s:7:"comment";b:1;}s:19:"Hook_symbol_COUNTRY";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/symbols/COUNTRY.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:19:"Hook_symbol_COUNTRY";s:7:"comment";b:1;}s:32:"Hook_symbol_COUNTRY_CODE_TO_NAME";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/symbols/COUNTRY_CODE_TO_NAME.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:32:"Hook_symbol_COUNTRY_CODE_TO_NAME";s:7:"comment";b:1;}s:32:"Hook_symbol_COUNTRY_NAME_TO_CODE";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/systems/symbols/COUNTRY_NAME_TO_CODE.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:32:"Hook_symbol_COUNTRY_NAME_TO_CODE";s:7:"comment";b:1;}s:20:"Hook_symbol_CPF_LIST";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/symbols/CPF_LIST.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:20:"Hook_symbol_CPF_LIST";s:7:"comment";b:1;}s:20:"Hook_symbol_CURRENCY";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/symbols/CURRENCY.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:20:"Hook_symbol_CURRENCY";s:7:"comment";b:1;}s:27:"Hook_symbol_CURRENCY_SYMBOL";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/symbols/CURRENCY_SYMBOL.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:27:"Hook_symbol_CURRENCY_SYMBOL";s:7:"comment";b:1;}s:22:"Hook_symbol_DEEP_CLEAN";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/systems/symbols/DEEP_CLEAN.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:22:"Hook_symbol_DEEP_CLEAN";s:7:"comment";b:1;}s:33:"Hook_symbol_GALLERY_VIDEO_FOR_URL";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/systems/symbols/GALLERY_VIDEO_FOR_URL.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:33:"Hook_symbol_GALLERY_VIDEO_FOR_URL";s:7:"comment";b:1;}s:18:"Hook_symbol_REGION";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/symbols/REGION.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:18:"Hook_symbol_REGION";s:7:"comment";b:1;}s:24:"Hook_symbol_SHOW_RATINGS";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/symbols/SHOW_RATINGS.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:24:"Hook_symbol_SHOW_RATINGS";s:7:"comment";b:1;}s:23:"Hook_symbol_STOCK_CHECK";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/symbols/STOCK_CHECK.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"run";s:11:"description";s:61:"Run function for symbol hooks. Searches for tasks to perform.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}}s:4:"name";s:23:"Hook_symbol_STOCK_CHECK";s:7:"comment";b:1;}s:29:"Hook_task_cns_members_recache";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/tasks/cns_members_recache.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:29:"Hook_task_cns_members_recache";s:7:"comment";b:1;}s:21:"Hook_task_cns_recache";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/tasks/cns_recache.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:21:"Hook_task_cns_recache";s:7:"comment";b:1;}s:28:"Hook_task_cns_topics_recache";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/systems/tasks/cns_topics_recache.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:28:"Hook_task_cns_topics_recache";s:7:"comment";b:1;}s:31:"Hook_task_dispatch_notification";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/tasks/dispatch_notification.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"dispatcher";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:86:"The notification dispatch object (pre-filled with details of the notification to send)";s:11:"phpdoc_name";s:10:"dispatcher";}i:1;a:7:{s:4:"name";s:4:"csss";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:"List of CSS files to require (null: none)";s:11:"phpdoc_name";s:4:"csss";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:31:"Hook_task_dispatch_notification";s:7:"comment";b:1;}s:26:"Hook_task_download_gallery";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/download_gallery.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:23:"The gallery to download";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:26:"Hook_task_download_gallery";s:7:"comment";b:1;}s:29:"Hook_task_download_member_csv";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/tasks/download_member_csv.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:15:"filter_by_allow";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:80:"Only provide members that have "Receive newsletters and other site updates" set.";s:11:"phpdoc_name";s:15:"filter_by_allow";}i:1;a:5:{s:4:"name";s:9:"extension";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"File extension to use.";s:11:"phpdoc_name";s:9:"extension";}i:2;a:5:{s:4:"name";s:6:"preset";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Preset to use.";s:11:"phpdoc_name";s:6:"preset";}i:3;a:5:{s:4:"name";s:13:"fields_to_use";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"List of fields to use (empty: all).";s:11:"phpdoc_name";s:13:"fields_to_use";}i:4;a:5:{s:4:"name";s:10:"usergroups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"List of usergroups to use (empty: all).";s:11:"phpdoc_name";s:10:"usergroups";}i:5;a:5:{s:4:"name";s:8:"order_by";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Field to order by.";s:11:"phpdoc_name";s:8:"order_by";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:22:"_get_csv_member_record";a:6:{s:8:"filename";s:51:"sources/hooks/systems/tasks/download_member_csv.php";s:10:"parameters";a:6:{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:10:"Member row";s:11:"phpdoc_name";s:1:"m";}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:24:"Map of usergroup details";s:11:"phpdoc_name";s:6:"groups";}i:2;a:5:{s:4:"name";s:8:"headings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:44:"List of headings to pull from the member row";s:11:"phpdoc_name";s:8:"headings";}i:3;a:5:{s:4:"name";s:4:"cpfs";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"List of CPFS to pull";s:11:"phpdoc_name";s:4:"cpfs";}i:4;a:5:{s:4:"name";s:13:"member_groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"List of member group membership records";s:11:"phpdoc_name";s:13:"member_groups";}i:5;a:5:{s:4:"name";s:18:"subscription_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:26:"List of subscription types";s:11:"phpdoc_name";s:18:"subscription_types";}}s:4:"name";s:22:"_get_csv_member_record";s:11:"description";s:39:"Get a CSV-outputtable row for a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The row";}}}s:4:"name";s:29:"Hook_task_download_member_csv";s:7:"comment";b:1;}s:26:"Hook_task_export_catalogue";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/export_catalogue.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:23:"The catalogue to export";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:26:"Hook_task_export_catalogue";s:7:"comment";b:1;}s:27:"Hook_task_export_points_log";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/tasks/export_points_log.php";s:10:"parameters";a:2:{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:9:"Date from";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:7:"Date to";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:27:"Hook_task_export_points_log";s:7:"comment";b:1;}s:26:"Hook_task_find_broken_urls";a:3:{s:9:"functions";a:6:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:16:"check_url_fields";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:1;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:2;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}}s:4:"name";s:16:"check_url_fields";s:11:"description";s:33:"Check URL fields for broken URLs.";s:5:"flags";a:0:{}}s:20:"check_comcode_fields";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:1;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:2;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}}s:4:"name";s:20:"check_comcode_fields";s:11:"description";s:37:"Check Comcode fields for broken URLs.";s:5:"flags";a:0:{}}s:16:"check_catalogues";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:1;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:2;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}}s:4:"name";s:16:"check_catalogues";s:11:"description";s:33:"Check catalogues for broken URLs.";s:5:"flags";a:0:{}}s:19:"check_comcode_pages";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:1;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:2;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}}s:4:"name";s:19:"check_comcode_pages";s:11:"description";s:36:"Check Comcode pages for broken URLs.";s:5:"flags";a:0:{}}s:9:"check_url";a:5:{s:8:"filename";s:48:"sources/hooks/systems/tasks/find_broken_urls.php";s:10:"parameters";a:8:{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:12:"URL to check";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:5:"table";}i:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:2:"ID";s:11:"phpdoc_name";s:2:"id";}i:4;a:5:{s:4:"name";s:15:"checked_already";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:42:"Place to record what we've already checked";s:11:"phpdoc_name";s:15:"checked_already";}i:5;a:5:{s:4:"name";s:9:"found_404";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:23:"Place to put 404 errors";s:11:"phpdoc_name";s:9:"found_404";}i:6;a:5:{s:4:"name";s:5:"found";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:34:"Place to put file-not-found errors";s:11:"phpdoc_name";s:5:"found";}i:7;a:7:{s:4:"name";s:4:"spot";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:53:"A textual identifier to where the content can be seen";s:11:"phpdoc_name";s:4:"spot";}}s:4:"name";s:9:"check_url";s:11:"description";s:32:"Check to see if a URL is broken.";s:5:"flags";a:0:{}}}s:4:"name";s:26:"Hook_task_find_broken_urls";s:7:"comment";b:1;}s:36:"Hook_task_find_orphaned_lang_strings";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/systems/tasks/find_orphaned_lang_strings.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:5:"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 limit to (null: no limit)";s:11:"phpdoc_name";s:5:"table";}i:1;a:7:{s:4:"name";s:3:"fix";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Whether to fix issues";s:11:"phpdoc_name";s:3:"fix";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:36:"Hook_task_find_orphaned_lang_strings";s:7:"comment";b:1;}s:31:"Hook_task_find_orphaned_uploads";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/systems/tasks/find_orphaned_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:6:"do_dir";a:6:{s:8:"filename";s:53:"sources/hooks/systems/tasks/find_orphaned_uploads.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:14:"Path to search";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:6:"do_dir";s:11:"description";s:41:"Search a directory recursively for files.";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_task_find_orphaned_uploads";s:7:"comment";b:1;}s:26:"Hook_task_import_catalogue";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/import_catalogue.php";s:10:"parameters";a:12:{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:"key_field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The title of the key field";s:11:"phpdoc_name";s:9:"key_field";}i:2;a:5:{s:4:"name";s:12:"new_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"New handling method";s:11:"phpdoc_name";s:12:"new_handling";}i:3;a:5:{s:4:"name";s:15:"delete_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Delete handling method";s:11:"phpdoc_name";s:15:"delete_handling";}i:4;a:5:{s:4:"name";s:15:"update_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Update handling method";s:11:"phpdoc_name";s:15:"update_handling";}i:5;a:5:{s:4:"name";s:19:"meta_keywords_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"Meta keywords field";s:11:"phpdoc_name";s:19:"meta_keywords_field";}i:6;a:5:{s:4:"name";s:22:"meta_description_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Meta description field";s:11:"phpdoc_name";s:22:"meta_description_field";}i:7;a:5:{s:4:"name";s:11:"notes_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"Notes field";s:11:"phpdoc_name";s:11:"notes_field";}i:8;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether rating is allowed for this resource";s:11:"phpdoc_name";s:12:"allow_rating";}i:9;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether comments are allowed for this resource";s:11:"phpdoc_name";s:14:"allow_comments";}i:10;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether trackbacks are allowed for this resource";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:11;a:5:{s:4:"name";s:8:"csv_name";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The CSV file being imported";s:11:"phpdoc_name";s:8:"csv_name";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:16:"import_csv_lines";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/import_catalogue.php";s:10:"parameters";a:17:{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:8:"csv_data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Data array of CSV imported file's lines";s:11:"phpdoc_name";s:8:"csv_data";}i:2;a:5:{s:4:"name";s:12:"catalog_root";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:46:"Catalogue root ID (null: Not a tree catalogue)";s:11:"phpdoc_name";s:12:"catalog_root";}i:3;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Array of catalogue fields";s:11:"phpdoc_name";s:6:"fields";}i:4;a:5:{s:4:"name";s:10:"categories";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"Array of categories";s:11:"phpdoc_name";s:10:"categories";}i:5;a:5:{s:4:"name";s:16:"csv_field_titles";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Array of csv field titles";s:11:"phpdoc_name";s:16:"csv_field_titles";}i:6;a:5:{s:4:"name";s:9:"key_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Key field";s:11:"phpdoc_name";s:9:"key_field";}i:7;a:5:{s:4:"name";s:12:"new_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"New handling method";s:11:"phpdoc_name";s:12:"new_handling";}i:8;a:5:{s:4:"name";s:15:"delete_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Delete handling method";s:11:"phpdoc_name";s:15:"delete_handling";}i:9;a:5:{s:4:"name";s:15:"update_handling";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Update handling method";s:11:"phpdoc_name";s:15:"update_handling";}i:10;a:5:{s:4:"name";s:11:"matched_ids";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:39:"IDs that are matched are collected here";s:11:"phpdoc_name";s:11:"matched_ids";}i:11;a:5:{s:4:"name";s:11:"notes_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"Notes field";s:11:"phpdoc_name";s:11:"notes_field";}i:12;a:5:{s:4:"name";s:19:"meta_keywords_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"Meta keywords field";s:11:"phpdoc_name";s:19:"meta_keywords_field";}i:13;a:5:{s:4:"name";s:22:"meta_description_field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Meta description field";s:11:"phpdoc_name";s:22:"meta_description_field";}i:14;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether rating is allowed for this resource";s:11:"phpdoc_name";s:12:"allow_rating";}i:15;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether comments are allowed for this resource";s:11:"phpdoc_name";s:14:"allow_comments";}i:16;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether trackbacks are allowed for this resource";s:11:"phpdoc_name";s:16:"allow_trackbacks";}}s:4:"name";s:16:"import_csv_lines";s:11:"description";s:69:"Create an entry-id=>value map of uploaded csv data and it's importing";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:65:"Return to propagate [immediate exit] (null: nothing to propagate)";}}}s:4:"name";s:26:"Hook_task_import_catalogue";s:7:"comment";b:1;}s:37:"Hook_task_import_filesystem_downloads";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:59:"sources/hooks/systems/tasks/import_filesystem_downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:25:"The category to import to";s:11:"phpdoc_name";s:11:"destination";}i:1;a:5:{s:4:"name";s:11:"server_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:15:"The import path";s:11:"phpdoc_name";s:11:"server_path";}i:2;a:5:{s:4:"name";s:10:"subfolders";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to import subfolders";s:11:"phpdoc_name";s:10:"subfolders";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:35:"filesystem_recursive_downloads_scan";a:6:{s:8:"filename";s:59:"sources/hooks/systems/tasks/import_filesystem_downloads.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:11:"server_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:53:"Filesystem-based path from where we are reading files";s:11:"phpdoc_name";s:11:"server_path";}i:1;a:5:{s:4:"name";s:10:"server_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:46:"URL-based path from where we are reading files";s:11:"phpdoc_name";s:10:"server_url";}i:2;a:5:{s:4:"name";s:8:"dest_cat";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:36:"The destination downloading category";s:11:"phpdoc_name";s:8:"dest_cat";}i:3;a:5:{s:4:"name";s:15:"make_subfolders";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether we add hierarchically (as opposed to a flat category fill)";s:11:"phpdoc_name";s:15:"make_subfolders";}}s:4:"name";s:35:"filesystem_recursive_downloads_scan";s:11:"description";s:42:"Worker function to do a filesystem import.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:25:"Number of downloads added";}}}s:4:"name";s:37:"Hook_task_import_filesystem_downloads";s:7:"comment";b:1;}s:30:"Hook_task_import_ftp_downloads";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/systems/tasks/import_ftp_downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:25:"The category to import to";s:11:"phpdoc_name";s:11:"destination";}i:1;a:5:{s:4:"name";s:10:"server_url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The import URL";s:11:"phpdoc_name";s:10:"server_url";}i:2;a:5:{s:4:"name";s:10:"subfolders";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to import subfolders";s:11:"phpdoc_name";s:10:"subfolders";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}s:28:"ftp_recursive_downloads_scan";a:6:{s:8:"filename";s:52:"sources/hooks/systems/tasks/import_ftp_downloads.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"conn_id";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:18:"The FTP connection";s:11:"phpdoc_name";s:7:"conn_id";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:54:"The URL that is equivalent to the base path on our FTP";s:11:"phpdoc_name";s:3:"url";}i:2;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:29:"The directory we are scanning";s:11:"phpdoc_name";s:9:"directory";}i:3;a:5:{s:4:"name";s:8:"dest_cat";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:36:"The destination downloading category";s:11:"phpdoc_name";s:8:"dest_cat";}i:4;a:5:{s:4:"name";s:15:"make_subfolders";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether we add hierarchically (as opposed to a flat category fill)";s:11:"phpdoc_name";s:15:"make_subfolders";}}s:4:"name";s:28:"ftp_recursive_downloads_scan";s:11:"description";s:36:"Worker function to do an FTP import.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:25:"Number of downloads added";}}}s:4:"name";s:30:"Hook_task_import_ftp_downloads";s:7:"comment";b:1;}s:27:"Hook_task_import_member_csv";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/systems/tasks/import_member_csv.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"default_password";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:65:"The default password to use (null: skip members with no password)";s:11:"phpdoc_name";s:16:"default_password";}i:1;a:5:{s:4:"name";s:23:"use_temporary_passwords";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to assign temporary passwords";s:11:"phpdoc_name";s:23:"use_temporary_passwords";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:30:"The path of the file to import";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:27:"Hook_task_import_member_csv";s:7:"comment";b:1;}s:39:"Hook_task_import_newsletter_subscribers";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/tasks/import_newsletter_subscribers.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"_language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:28:"The language for subscribers";s:11:"phpdoc_name";s:9:"_language";}i:1;a:5:{s:4:"name";s:13:"newsletter_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The newsletter being imported into";s:11:"phpdoc_name";s:13:"newsletter_id";}i:2;a:5:{s:4:"name";s:6:"_level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The level to import into";s:11:"phpdoc_name";s:6:"_level";}i:3;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:30:"The path of the file to import";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:39:"Hook_task_import_newsletter_subscribers";s:7:"comment";b:1;}s:20:"Hook_task_import_rss";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/tasks/import_rss.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:12:"is_validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether to import as validated";s:11:"phpdoc_name";s:12:"is_validated";}i:1;a:5:{s:4:"name";s:15:"download_images";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether to download remote images";s:11:"phpdoc_name";s:15:"download_images";}i:2;a:5:{s:4:"name";s:14:"to_own_account";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether to import everything to the task initiator's account";s:11:"phpdoc_name";s:14:"to_own_account";}i:3;a:5:{s:4:"name";s:20:"import_blog_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:26:"Whether to import comments";s:11:"phpdoc_name";s:20:"import_blog_comments";}i:4;a:5:{s:4:"name";s:14:"import_to_blog";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:52:"Whether to import everything to blog news categories";s:11:"phpdoc_name";s:14:"import_to_blog";}i:5;a:5:{s:4:"name";s:3:"rss";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:19:"The parsed RSS feed";s:11:"phpdoc_name";s:3:"rss";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:20:"Hook_task_import_rss";s:7:"comment";b:1;}s:26:"Hook_task_import_wordpress";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/systems/tasks/import_wordpress.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:12:"is_validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether to import as validated";s:11:"phpdoc_name";s:12:"is_validated";}i:1;a:5:{s:4:"name";s:15:"download_images";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether to download remote images";s:11:"phpdoc_name";s:15:"download_images";}i:2;a:5:{s:4:"name";s:14:"to_own_account";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether to import everything to the task initiator's account";s:11:"phpdoc_name";s:14:"to_own_account";}i:3;a:5:{s:4:"name";s:20:"import_blog_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:26:"Whether to import comments";s:11:"phpdoc_name";s:20:"import_blog_comments";}i:4;a:5:{s:4:"name";s:14:"import_to_blog";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:52:"Whether to import everything to blog news categories";s:11:"phpdoc_name";s:14:"import_to_blog";}i:5;a:5:{s:4:"name";s:22:"import_wordpress_users";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to import Wordpress users";s:11:"phpdoc_name";s:22:"import_wordpress_users";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:26:"Hook_task_import_wordpress";s:7:"comment";b:1;}s:24:"Hook_task_index_download";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/tasks/index_download.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:15:"The download ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The download file URL";s:11:"phpdoc_name";s:3:"url";}i:2;a:5:{s:4:"name";s:17:"original_filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The download filename";s:11:"phpdoc_name";s:17:"original_filename";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:24:"Hook_task_index_download";s:7:"comment";b:1;}s:34:"Hook_task_install_geolocation_data";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/systems/tasks/install_geolocation_data.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:34:"Hook_task_install_geolocation_data";s:7:"comment";b:1;}s:21:"Hook_task_make_backup";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/systems/tasks/make_backup.php";s:10:"parameters";a:3:{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:25:"The filename to backup to";s:11:"phpdoc_name";s:4:"file";}i:1;a:6:{s:4:"name";s:6:"b_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The type of backup to do";s:11:"phpdoc_name";s:6:"b_type";s:3:"set";s:16:"full incremental";}i:2;a:5:{s:4:"name";s:8:"max_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"The maximum size of a file to include in the backup";s:11:"phpdoc_name";s:8:"max_size";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:21:"Hook_task_make_backup";s:7:"comment";b:1;}s:29:"Hook_task_notify_topics_moved";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/systems/tasks/notify_topics_moved.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"or_list";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:45:"An SQL segment of what topics are being moved";s:11:"phpdoc_name";s:7:"or_list";}i:1;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the target forum";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:29:"Hook_task_notify_topics_moved";s:7:"comment";b:1;}s:25:"Hook_task_send_newsletter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/systems/tasks/send_newsletter.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The newsletter message";s:11:"phpdoc_name";s:7:"message";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The newsletter subject";s:11:"phpdoc_name";s:7:"subject";}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:12:"The language";s:11:"phpdoc_name";s:4:"lang";}i:3;a:5:{s:4:"name";s:12:"send_details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:87:"A map describing what newsletters and newsletter levels the newsletter is being sent to";s:11:"phpdoc_name";s:12:"send_details";}i:4;a:5:{s:4:"name";s:9:"html_only";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:35:"Whether to only send in HTML format";s:11:"phpdoc_name";s:9:"html_only";}i:5;a:5:{s:4:"name";s:10:"from_email";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:71:"Override the email address the mail is sent from (blank: staff address)";s:11:"phpdoc_name";s:10:"from_email";}i:6;a:5:{s:4:"name";s:9:"from_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:58:"Override the name the mail is sent from (blank: site name)";s:11:"phpdoc_name";s:9:"from_name";}i:7;a:6:{s:4:"name";s:8:"priority";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The message priority (1=urgent, 3=normal, 5=low)";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:8;a:5:{s:4:"name";s:8:"csv_data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"CSV data of extra subscribers (blank: none). This is in the same Composr newsletter CSV format that we export elsewhere.";s:11:"phpdoc_name";s:8:"csv_data";}i:9;a:5:{s:4:"name";s:13:"mail_template";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The template used to show the email";s:11:"phpdoc_name";s:13:"mail_template";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:25:"Hook_task_send_newsletter";s:7:"comment";b:1;}s:17:"Hook_task_sitemap";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/systems/tasks/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:18:"Run the task hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:273:"A tuple of at least 2: Return mime-type, content (either Tempcode, or a string, or a filename and file-path pair to a temporary file), map of HTTP headers if transferring immediately, map of ini_set commands if transferring immediately (null: show standard success message)";}}}s:4:"name";s:17:"Hook_task_sitemap";s:7:"comment";b:1;}s:25:"Hook_trackback_catalogues";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/systems/trackback/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:25:"Hook_trackback_catalogues";s:7:"comment";b:1;}s:24:"Hook_trackback_downloads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:45:"sources/hooks/systems/trackback/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:24:"Hook_trackback_downloads";s:7:"comment";b:1;}s:21:"Hook_trackback_events";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/trackback/events.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:21:"Hook_trackback_events";s:7:"comment";b:1;}s:21:"Hook_trackback_images";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/trackback/images.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:21:"Hook_trackback_images";s:7:"comment";b:1;}s:19:"Hook_trackback_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:40:"sources/hooks/systems/trackback/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:19:"Hook_trackback_news";s:7:"comment";b:1;}s:20:"Hook_trackback_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/systems/trackback/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:20:"Hook_trackback_polls";s:7:"comment";b:1;}s:21:"Hook_trackback_videos";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/systems/trackback/videos.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:3:"run";s:11:"description";s:110:"Run function for trackback hooks. They see if content of an ID relating to this content has trackback enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether trackback is enabled";}}}s:4:"name";s:21:"Hook_trackback_videos";s:7:"comment";b:1;}s:24:"Field_restriction_loader";a:3:{s:9:"functions";a:4:{s:2:"go";a:5:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:0:{}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:24:"sources/input_filter.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:10:"endElement";a:5:{s:8:"filename";s:24:"sources/input_filter.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:9:"startText";a:5:{s:8:"filename";s:24:"sources/input_filter.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:4:"name";s:24:"Field_restriction_loader";s:7:"comment";b:1;}s:10:"LangFilter";a:3:{s:9:"functions";a:2:{s:12:"compile_time";a:6:{s:8:"filename";s:16:"sources/lang.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:"?string";s:11:"description";s:48:"Language string ID (null: not a language string)";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:6:"string";s:11:"description";s:12:"String value";s:11:"phpdoc_name";s:5:"value";}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:14:"?LANGUAGE_NAME";s:11:"description";s:33:"Language (null: current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:12:"compile_time";s:11:"description";s:25:"Do a compile-time filter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}s:8:"run_time";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Language string ID";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:6:"string";s:11:"description";s:21:"Language string value";s:11:"phpdoc_name";s:5:"value";}i:2;a:5:{s:4:"name";s:4:"flag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Flag value assigned to the string";s:11:"phpdoc_name";s:4:"flag";}i:3;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The parameters";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:8:"run_time";s:11:"description";s:81:"Do a run-time filter. Only happens for strings marked for processing with a flag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}}s:4:"name";s:10:"LangFilter";s:7:"comment";b:1;}s:13:"LangFilter_EN";a:3:{s:9:"functions";a:4:{s:11:"__construct";a:5:{s:8:"filename";s:26:"sources/lang_filter_EN.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:12:"compile_time";a:6:{s:8:"filename";s:26:"sources/lang_filter_EN.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:"?string";s:11:"description";s:48:"Language string ID (null: not a language string)";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:6:"string";s:11:"description";s:12:"String value";s:11:"phpdoc_name";s:5:"value";}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:14:"?LANGUAGE_NAME";s:11:"description";s:33:"Language (null: current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:12:"compile_time";s:11:"description";s:25:"Do a compile-time filter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}s:8:"run_time";a:6:{s:8:"filename";s:26:"sources/lang_filter_EN.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Language string ID";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:6:"string";s:11:"description";s:21:"Language string value";s:11:"phpdoc_name";s:5:"value";}i:2;a:5:{s:4:"name";s:4:"flag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Flag value assigned to the string";s:11:"phpdoc_name";s:4:"flag";}i:3;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The parameters";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:8:"run_time";s:11:"description";s:81:"Do a run-time filter. Only happens for strings marked for processing with a flag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}s:10:"filter_css";a:6:{s:8:"filename";s:26:"sources/lang_filter_EN.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:24:"The name of the CSS file";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The CSS code";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:10:"filter_css";s:11:"description";s:41:"Do a compile-time filter of the CSS code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The filtered CSS code";}}}s:4:"name";s:13:"LangFilter_EN";s:7:"comment";b:1;}s:28:"Media_renderer_with_fallback";a:3:{s:9:"functions";a:1:{s:15:"fallback_render";a:6:{s:8:"filename";s:26:"sources/media_renderer.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"URL to render";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:67:"Whether there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:7:{s:4:"name";s:9:"click_url";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:53:"URL to route clicks through to (null: no special URL)";s:11:"phpdoc_name";s:9:"click_url";}}s:4:"name";s:15:"fallback_render";s:11:"description";s:64:"If we are rendering in low-fi, result to simple image fall-back.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:38:"Rendered version (null: do not render)";}}}s:4:"name";s:28:"Media_renderer_with_fallback";s:7:"comment";b:1;}s:23:"Notification_dispatcher";a:3:{s:9:"functions";a:2:{s:11:"__construct";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The notification code to use";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:13:"code_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:142:"The category within the notification code (null: none). If it is to have $store_in_staff_messaging_system, it must have the format _";s:11:"phpdoc_name";s:13:"code_category";}i:2;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Message subject (in Comcode)";s:11:"phpdoc_name";s:7:"subject";}i:3;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"Message body (in Comcode)";s:11:"phpdoc_name";s:7:"message";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:60:"List of enabled members to limit sending to (null: everyone)";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:14:"from_member_id";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:126:"The member ID doing the sending. Either a MEMBER or a negative number (e.g. A_FROM_SYSTEM_UNPRIVILEGED) (null: current member)";s:11:"phpdoc_name";s:14:"from_member_id";}i:6;a:6:{s:4:"name";s:8:"priority";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The message priority (1=urgent, 3=normal, 5=low)";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:7;a:5:{s:4:"name";s:31:"store_in_staff_messaging_system";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to create a topic for discussion (ignored if the staff_messaging addon not installed)";s:11:"phpdoc_name";s:31:"store_in_staff_messaging_system";}i:8;a:5:{s:4:"name";s:5:"no_cc";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to NOT CC to the CC address";s:11:"phpdoc_name";s:5:"no_cc";}i:9;a:5:{s:4:"name";s:32:"no_notify_for__notification_code";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:10;a:5:{s:4:"name";s:28:"no_notify_for__code_category";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:11;a:7:{s:4:"name";s:14:"subject_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:85:"Only relevant if $store_in_staff_messaging_system is true: subject prefix for storage";s:11:"phpdoc_name";s:14:"subject_prefix";}i:12;a:7:{s:4:"name";s:14:"subject_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:85:"Only relevant if $store_in_staff_messaging_system is true: subject suffix for storage";s:11:"phpdoc_name";s:14:"subject_suffix";}i:13;a:7:{s:4:"name";s:11:"body_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:82:"Only relevant if $store_in_staff_messaging_system is true: body prefix for storage";s:11:"phpdoc_name";s:11:"body_prefix";}i:14;a:7:{s:4:"name";s:11:"body_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:82:"Only relevant if $store_in_staff_messaging_system is true: body suffix for storage";s:11:"phpdoc_name";s:11:"body_suffix";}i:15;a:7:{s:4:"name";s:11:"attachments";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:80:"A list of attachments (each attachment being a map, path=>filename) (null: none)";s:11:"phpdoc_name";s:11:"attachments";}i:16;a:7:{s:4:"name";s:13:"use_real_from";s:7:"default";s:13:"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 we will make a "reply to" direct -- we only do this if we're allowed to disclose email addresses for this particular notification type (i.e. if it's a direct contact)";s:11:"phpdoc_name";s:13:"use_real_from";}}s:4:"name";s:11:"__construct";s:11:"description";s:34:"Construct notification dispatcher.";s:5:"flags";a:0:{}}s:8:"dispatch";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"dispatch";s:11:"description";s:43:"Send out a notification to members enabled.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Notification_dispatcher";s:7:"comment";b:1;}s:17:"Hook_Notification";a:3:{s:9:"functions";a:16:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:19:"supports_categories";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:19:"supports_categories";s:11:"description";s:291:"Find whether a handled notification code supports categories.(Content types, for example, will define notifications on specific categories, not just in general. The categories are interpreted by the hook and may be complex. E.g. it might be like a regexp match, or like FORUM:3 or TOPIC:100)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:20:"create_category_tree";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"create_category_tree";s:11:"description";s:250:"Standard function to create the standardised category tree. This base version will do it based on seeing what is already being monitored, i.e. so you can unmonitor them. It assumes monitoring is initially set from the frontend via the monitor button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:21:"_create_category_tree";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;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 where we're looking under (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:14:"for_any_member";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:141:"Whether to list anything monitored by any member (useful if you are calling this because you can't naturally enumerate what can be monitored)";s:11:"phpdoc_name";s:14:"for_any_member";}}s:4:"name";s:21:"_create_category_tree";s:11:"description";s:250:"Standard function to create the standardised category tree. This base version will do it based on seeing what is already being monitored, i.e. so you can unmonitor them. It assumes monitoring is initially set from the frontend via the monitor button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Tree structure";}}s:16:"allowed_settings";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:16:"allowed_settings";s:11:"description";s:91:"Find a bitmask of settings (email, SMS, etc) a notification code supports for listening on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Allowed settings";}}s:19:"get_initial_setting";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_initial_setting";s:11:"description";s:129:"Find the initial setting that members have for a notification code (only applies to the member_could_potentially_enable members).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Initial setting";}}s:24:"get_default_auto_setting";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:24:"get_default_auto_setting";s:11:"description";s:147:"Find the setting that members have for a notification code if they have done some action triggering automatic setting (e.g. posted within a topic).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Automatic setting";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:44:"_all_members_who_have_enabled_with_privilege";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"to_filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"Members from main query (we'll filter them)";s:11:"phpdoc_name";s:9:"to_filter";}i:1;a:5:{s:4:"name";s:9:"privilege";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The privilege";s:11:"phpdoc_name";s:9:"privilege";}i:2;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:3;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:6;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:44:"_all_members_who_have_enabled_with_privilege";s:11:"description";s:58:"Further filter results from _all_members_who_have_enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:46:"_all_members_who_have_enabled_with_zone_access";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"to_filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"Members from main query (we'll filter them)";s:11:"phpdoc_name";s:9:"to_filter";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The zone";s:11:"phpdoc_name";s:4:"zone";}i:2;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:3;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:6;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:46:"_all_members_who_have_enabled_with_zone_access";s:11:"description";s:58:"Further filter results from _all_members_who_have_enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:46:"_all_members_who_have_enabled_with_page_access";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"to_filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"Members from main query (we'll filter them)";s:11:"phpdoc_name";s:9:"to_filter";}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:8:"The page";s:11:"phpdoc_name";s:4:"page";}i:2;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:3;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:6;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:46:"_all_members_who_have_enabled_with_page_access";s:11:"description";s:58:"Further filter results from _all_members_who_have_enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:50:"_all_members_who_have_enabled_with_category_access";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"to_filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"Members from main query (we'll filter them)";s:11:"phpdoc_name";s:9:"to_filter";}i:1;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The category permission type";s:11:"phpdoc_name";s:8:"category";}i:2;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:3;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:4;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:6;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:50:"_all_members_who_have_enabled_with_category_access";s:11:"description";s:58:"Further filter results from _all_members_who_have_enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:17:"Whether they have";}}s:29:"_all_members_who_have_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:2;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:3;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}i:5;a:7:{s:4:"name";s:13:"catch_all_too";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:74:"Whether to find members who are subscribed regardless of notification code";s:11:"phpdoc_name";s:13:"catch_all_too";}}s:4:"name";s:29:"_all_members_who_have_enabled";s:11:"description";s:180:"Get a list of members who have enabled this notification (i.e. have chosen to or are defaulted to).(No pagination supported, as assumed there are only a small set of members here.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:10:"_is_member";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:10:"_is_member";s:11:"description";s:102:"Find whether someone has permission to view any notifications (yes) and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:17:"Hook_Notification";s:7:"comment";b:1;}s:24:"Hook_notification__Staff";a:3:{s:9:"functions";a:6:{s:18:"list_handled_codes";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"list_handled_codes";s:11:"description";s:173:"Get a list of all the notification codes this hook can handle.(Addons can define hooks that handle whole sets of codes, so hooks are written so they can take wide authority)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:93:"List of codes (mapping between code names, and a pair: section and labelling for those codes)";}}s:29:"list_members_who_have_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:13:"to_member_ids";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:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}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:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:300;s:11:"default_raw";s:3:"300";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:29:"list_members_who_have_enabled";s:11:"description";s:122:"Get a list of members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:31:"member_could_potentially_enable";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:31:"member_could_potentially_enable";s:11:"description";s:79:"Find whether a member could enable this notification (i.e. have permission to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether they could";}}s:18:"member_has_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"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:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:18:"member_has_enabled";s:11:"description";s:201:"Find whether a member has enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).(Separate implementation to list_members_who_have_enabled, for performance reasons.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:27:"_all_staff_who_have_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Notification code";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}i:2;a:5:{s:4:"name";s:13:"to_member_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:150:"List of member IDs we are restricting to (null: no restriction). This effectively works as a intersection set operator against those who have enabled.";s:11:"phpdoc_name";s:13:"to_member_ids";}i:3;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position (for pagination)";s:11:"phpdoc_name";s:5:"start";}i:4;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Maximum (for pagination)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:27:"_all_staff_who_have_enabled";s:11:"description";s:128:"Get a list of staff members who have enabled this notification (i.e. have permission to AND have chosen to or are defaulted to).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: Map of members to their notification setting, and whether there may be more";}}s:9:"_is_staff";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:37:"only_if_enabled_on__notification_code";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Notification code (null: don't check if they are)";s:11:"phpdoc_name";s:37:"only_if_enabled_on__notification_code";}i:1;a:5:{s:4:"name";s:28:"only_if_enabled_on__category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:28:"only_if_enabled_on__category";}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:23:"Member to check against";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:98:"Find whether someone has permission to view staff notifications and possibly if they actually are.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether they do";}}}s:4:"name";s:24:"Hook_notification__Staff";s:7:"comment";b:1;}s:27:"Persistent_caching_apccache";a:3:{s:9:"functions";a:5:{s:0:"";a:6:{s:8:"filename";s:34:"sources/persistent_caching/apc.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:34:"sources/persistent_caching/apc.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:34:"sources/persistent_caching/apc.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:34:"sources/persistent_caching/apc.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:34:"sources/persistent_caching/apc.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:27:"Persistent_caching_apccache";s:7:"comment";b:1;}s:36:"Persistent_caching_eacceleratorcache";a:3:{s:9:"functions";a:5:{s:0:"";a:6:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:43:"sources/persistent_caching/eaccelerator.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:36:"Persistent_caching_eacceleratorcache";s:7:"comment";b:1;}s:28:"Persistent_caching_filecache";a:3:{s:9:"functions";a:6:{s:11:"__construct";a:5:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:17:"load_objects_list";a:6:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"load_objects_list";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:41:"sources/persistent_caching/filesystem.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Persistent_caching_filecache";s:7:"comment";b:1;}s:27:"Persistent_caching_memcache";a:3:{s:9:"functions";a:6:{s:11:"__construct";a:5:{s:8:"filename";s:39:"sources/persistent_caching/memcache.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:0:"";a:6:{s:8:"filename";s:39:"sources/persistent_caching/memcache.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:39:"sources/persistent_caching/memcache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:39:"sources/persistent_caching/memcache.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:39:"sources/persistent_caching/memcache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:39:"sources/persistent_caching/memcache.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:27:"Persistent_caching_memcache";s:7:"comment";b:1;}s:28:"Persistent_caching_memcached";a:3:{s:9:"functions";a:6:{s:11:"__construct";a:5:{s:8:"filename";s:40:"sources/persistent_caching/memcached.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:0:"";a:6:{s:8:"filename";s:40:"sources/persistent_caching/memcached.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:40:"sources/persistent_caching/memcached.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:40:"sources/persistent_caching/memcached.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:40:"sources/persistent_caching/memcached.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:40:"sources/persistent_caching/memcached.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:28:"Persistent_caching_memcached";s:7:"comment";b:1;}s:27:"Persistent_caching_wincache";a:3:{s:9:"functions";a:5:{s:0:"";a:6:{s:8:"filename";s:39:"sources/persistent_caching/wincache.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:39:"sources/persistent_caching/wincache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:39:"sources/persistent_caching/wincache.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:39:"sources/persistent_caching/wincache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:39:"sources/persistent_caching/wincache.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:27:"Persistent_caching_wincache";s:7:"comment";b:1;}s:25:"Persistent_caching_xcache";a:3:{s:9:"functions";a:5:{s:0:"";a:6:{s:8:"filename";s:37:"sources/persistent_caching/xcache.php";s:10:"parameters";a:0:{}s:4:"name";s:0:"";s:11:"description";s:40:"Instruction to load up the objects list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The list of objects";}}s:3:"get";a:6:{s:8:"filename";s:37:"sources/persistent_caching/xcache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:3:"get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:3:"set";a:5:{s:8:"filename";s:37:"sources/persistent_caching/xcache.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:5:"flags";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:34:"Various flags (parameter not used)";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"expire_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:48:"The expiration time in seconds (null: no expiry)";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:3:"set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:6:"delete";a:5:{s:8:"filename";s:37:"sources/persistent_caching/xcache.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:6:"string";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:6:"delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:5:"flush";a:5:{s:8:"filename";s:37:"sources/persistent_caching/xcache.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"flush";s:11:"description";s:42:"Remove all data from the persistent cache.";s:5:"flags";a:0:{}}}s:4:"name";s:25:"Persistent_caching_xcache";s:7:"comment";b:1;}s:16:"Resource_fs_base";a:3:{s:9:"functions";a:76:{s:13:"_get_cma_info";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:13:"_get_cma_info";s:11:"description";s:62:"Get the file resource info for this Commandr-fs resource hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"object";s:11:"description";s:10:"The object";}}s:14:"is_folder_type";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:14:"is_folder_type";s:11:"description";s:49:"Find whether a resource type is of a folder-type.";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:"is_file_type";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:12:"is_file_type";s:11:"description";s:47:"Find whether a resource type is of a file-type.";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:10:"_is_active";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_is_active";s:11:"description";s:38:"Whether the filesystem hook is active.";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:19:"can_accept_filetype";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"filetype";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The file type (no file extension)";s:11:"phpdoc_name";s:8:"filetype";}}s:4:"name";s:19:"can_accept_filetype";s:11:"description";s:62:"Whether the filesystem hook can handle a particular file type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:35:"List of our resource types that can";}}s:30:"_has_parent_child_relationship";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"above";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"Folder resource type (null: root)";s:11:"phpdoc_name";s:5:"above";}i:1;a:5:{s:4:"name";s:5:"under";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"Resource type (may be file or folder)";s:11:"phpdoc_name";s:5:"under";}}s:4:"name";s:30:"_has_parent_child_relationship";s:11:"description";s:111:"Find whether a kind of resource handled by this hook (folder or file) can be under a particular kind of folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:111:"A map: The parent referencing field, the table it is in, and the ID field of that table (null: cannot be under)";}}s:15:"file_load__flat";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:15:"file_load__flat";s:11:"description";s:100:"Load function for resource-fs (for files). Finds the data for some resource from a resource-fs file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Resource data (false: error)";}}s:17:"folder_load__flat";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:17:"folder_load__flat";s:11:"description";s:104:"Load function for resource-fs (for folders). Finds the data for some resource from a resource-fs folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Resource data (false: error)";}}s:15:"file_save__flat";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Resource data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:15:"file_save__flat";s:11:"description";s:99:"Save function for resource-fs (for files). Parses the data for some resource to a resource-fs file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:17:"folder_save__flat";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Resource data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:17:"folder_save__flat";s:11:"description";s:103:"Save function for resource-fs (for folders). Parses the data for some resource to a resource-fs folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:18:"_file_magic_filter";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}i:3;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:18:"_file_magic_filter";s:11:"description";s:127:"Reinterpret the input of a file, into a way we can understand it to add/edit. Hooks may override this with special import code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:154:"A pair: the resource label, Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";}}s:20:"_folder_magic_filter";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:20:"_folder_magic_filter";s:11:"description";s:129:"Reinterpret the input of a folder, into a way we can understand it to add/edit. Hooks may override this with special import code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:154:"A pair: the resource label, Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";}}s:27:"file_convert_id_to_filename";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:27:"file_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The filename (null: could not find)";}}s:29:"folder_convert_id_to_filename";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:29:"folder_convert_id_to_filename";s:11:"description";s:102:"Get the filename for a resource ID. Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The filename (null: could not find)";}}s:27:"file_convert_filename_to_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:27:"file_convert_filename_to_id";s:11:"description";s:112:"Get the resource ID for a filename (of file). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:65:"A pair: The resource type, the resource ID (null: could not find)";}}s:29:"folder_convert_filename_to_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:190:"The resource type (null: assumption of only one folder resource type for this hook; only passed as non-null from overridden functions within hooks that are calling this as a helper function)";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:29:"folder_convert_filename_to_id";s:11:"description";s:114:"Get the resource ID for a filename (of folder). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"A pair: The resource type, the resource ID";}}s:21:"_default_property_str";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:21:"_default_property_str";s:11:"description";s:45:"Find a default property, defaulting to blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:28:"The value (null: null value)";}}s:26:"_default_property_str_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:26:"_default_property_str_null";s:11:"description";s:44:"Find a default property, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:28:"The value (null: null value)";}}s:21:"_default_property_int";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:21:"_default_property_int";s:11:"description";s:50:"Find an integer default property, defaulting to 0.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:26:"_default_property_int_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:26:"_default_property_int_null";s:11:"description";s:44:"Find a default property, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:17:"_integer_category";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:45:"The category value (blank: root) (null: root)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:17:"_integer_category";s:11:"description";s:68:"Convert a category to an integer, defaulting to null if it is blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:25:"The category (null: root)";}}s:29:"_default_property_int_modeavg";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}i:2;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The table to average within";s:11:"phpdoc_name";s:5:"table";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The last-resort default";s:11:"phpdoc_name";s:7:"default";}i:4;a:7:{s:4:"name";s:11:"db_property";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:47:"The database property (null: same as $property)";s:11:"phpdoc_name";s:11:"db_property";}}s:4:"name";s:29:"_default_property_int_modeavg";s:11:"description";s:118:"Find a default property, defaulting to the average of what is there already, or the given default if really necessary.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"The value";}}s:27:"_default_property_time_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:27:"_default_property_time_null";s:11:"description";s:60:"Find a default property for a timestamp, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:22:"_default_property_time";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:22:"_default_property_time";s:11:"description";s:68:"Find a default property for a timestamp, defaulting to current time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"The value";}}s:29:"_default_property_member_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:29:"_default_property_member_null";s:11:"description";s:57:"Find a default property for a member, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:24:"_default_property_member";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:24:"_default_property_member";s:11:"description";s:37:"Find a default property for a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:28:"_default_property_group_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:28:"_default_property_group_null";s:11:"description";s:60:"Find a default property for a usergroup, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:23:"_default_property_group";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:23:"_default_property_group";s:11:"description";s:40:"Find a default property for a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:28:"The value (null: null value)";}}s:25:"_default_property_urlpath";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}i:2;a:7:{s:4:"name";s:16:"ignore_conflicts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether to ignore conflicts with existing files (=edit op, basically)";s:11:"phpdoc_name";s:16:"ignore_conflicts";}}s:4:"name";s:25:"_default_property_urlpath";s:11:"description";s:34:"Find a default property for a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The value";}}s:34:"_default_property_foreign_key_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"_table_referenced";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The table the key is to";s:11:"phpdoc_name";s:17:"_table_referenced";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:34:"_default_property_foreign_key_null";s:11:"description";s:62:"Find a default property for a foreign key, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:28:"The value (null: null value)";}}s:29:"_default_property_foreign_key";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"_table_referenced";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The table the key is to";s:11:"phpdoc_name";s:17:"_table_referenced";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:29:"_default_property_foreign_key";s:11:"description";s:42:"Find a default property for a foreign key.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The value";}}s:34:"_default_property_resource_id_null";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:34:"_default_property_resource_id_null";s:11:"description";s:59:"Find a default property for a resource, defaulting to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:28:"The value (null: null value)";}}s:29:"_default_property_resource_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The properties";s:11:"phpdoc_name";s:10:"properties";}i:2;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:29:"_default_property_resource_id";s:11:"description";s:39:"Find a default property for a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The value";}}s:23:"_create_name_from_label";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:23:"_create_name_from_label";s:11:"description";s:25:"Turn a label into a name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:20:"_log_if_save_matchup";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"The resource type (null: unknown)";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:45:"The resource ID (false: was not added/edited)";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:3;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:20:"_log_if_save_matchup";s:11:"description";s:83:"Helper function: detect if a resource did not save all the properties it was given.";s:5:"flags";a:0:{}}s:6:"search";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:7:{s:4:"name";s:12:"full_subpath";s:7:"default";s:13:"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 to include the full subpath";s:11:"phpdoc_name";s:12:"full_subpath";}}s:4:"name";s:6:"search";s:11:"description";s:42:"Find the foldername/subpath to a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:40:"The foldername/subpath (null: not found)";}}s:25:"convert_label_to_filename";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:5:"label";}i:1;a:5:{s:4:"name";s:7:"subpath";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:117:"The path (blank: root / not applicable). It may end in "/*" if you want to look for a match under a certain directory";s:11:"phpdoc_name";s:7:"subpath";}i:2;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:18:"must_already_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:38:"Whether the content must already exist";s:11:"phpdoc_name";s:18:"must_already_exist";}i:4;a:7:{s:4:"name";s:16:"use_guid_for_new";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:95:"GUID to auto-create with (null: either not auto-creating, or not specifying the GUID if we are)";s:11:"phpdoc_name";s:16:"use_guid_for_new";}}s:4:"name";s:25:"convert_label_to_filename";s:11:"description";s:128:"Convert a label to a filename, possibly with auto-creating if needed. This is useful for the Composr-side resource-agnostic API.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:30:"The filename (null: not found)";}}s:19:"convert_label_to_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"_label";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:6:"_label";}i:1;a:5:{s:4:"name";s:7:"subpath";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:117:"The path (blank: root / not applicable). It may end in "/*" if you want to look for a match under a certain directory";s:11:"phpdoc_name";s:7:"subpath";}i:2;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:18:"must_already_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:38:"Whether the content must already exist";s:11:"phpdoc_name";s:18:"must_already_exist";}i:4;a:7:{s:4:"name";s:16:"use_guid_for_new";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:95:"GUID to auto-create with (null: either not auto-creating, or not specifying the GUID if we are)";s:11:"phpdoc_name";s:16:"use_guid_for_new";}}s:4:"name";s:19:"convert_label_to_id";s:11:"description";s:123:"Convert a label to an ID, possibly with auto-creating if needed. This is useful for the Composr-side resource-agnostic API.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:24:"The ID (null: not found)";}}s:22:"convert_id_to_filename";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:22:"convert_id_to_filename";s:11:"description";s:122:"Get the filename for a resource ID (of file or folder). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:30:"The filename (null: not found)";}}s:22:"convert_filename_to_id";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:25:"The filename, or filepath";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:22:"convert_filename_to_id";s:11:"description";s:122:"Get the resource ID for a filename (of file or folder). Note that filenames are unique across all folders in a filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:65:"A pair: The resource type, the resource ID (null: could not find)";}}s:13:"resource_save";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:5:"label";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:3;a:7:{s:4:"name";s:10:"properties";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:23:"Properties (null: none)";s:11:"phpdoc_name";s:10:"properties";}i:4;a:7:{s:4:"name";s:15:"search_label_as";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:126:"Whether to look for existing records using $filename as a label and this resource type (null: $filename is a strict file name)";s:11:"phpdoc_name";s:15:"search_label_as";}i:5;a:7:{s:4:"name";s:11:"search_path";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:50:"Search path (null: the same as the path saving at)";s:11:"phpdoc_name";s:11:"search_path";}}s:4:"name";s:13:"resource_save";s:11:"description";s:121:"Save function for resource-fs. Parses the data for some resource to a resource-fs JSON file. Wraps file_save/folder_save.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:12:"resource_add";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"Filename OR Resource label";s:11:"phpdoc_name";s:5:"label";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:3;a:7:{s:4:"name";s:10:"properties";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:139:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields) (null: none)";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:12:"resource_add";s:11:"description";s:82:"Adds some resource with the given label and properties. Wraps file_add/folder_add.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:13:"resource_load";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"resource_load";s:11:"description";s:68:"Finds the properties for some resource. Wraps file_load/folder_load.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:38:"Details of the resource (false: error)";}}s:13:"resource_edit";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:3;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:126:"Properties (may be empty, properties given are open to interpretation by the hook but generally correspond to database fields)";s:11:"phpdoc_name";s:10:"properties";}i:4;a:7:{s:4:"name";s:13:"explicit_move";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Whether we are definitely moving (as opposed to possible having it in multiple positions)";s:11:"phpdoc_name";s:13:"explicit_move";}}s:4:"name";s:13:"resource_edit";s:11:"description";s:72:"Edits the resource to the given properties. Wraps file_edit/folder_edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:15:"resource_delete";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:15:"resource_delete";s:11:"description";s:54:"Deletes the resource. Wraps file_delete/folder_delete.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:21:"reset_resource_access";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:21:"reset_resource_access";s:11:"description";s:61:"Reset resource privileges on the resource for all usergroups.";s:5:"flags";a:0:{}}s:19:"set_resource_access";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}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:38:"A mapping from group ID to view access";s:11:"phpdoc_name";s:6:"groups";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"set_resource_access";s:11:"description";s:41:"Set resource view access on the resource.";s:5:"flags";a:0:{}}s:19:"get_resource_access";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"get_resource_access";s:11:"description";s:41:"Get resource view access on the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A mapping from group ID to view access";}}s:28:"set_resource_access__members";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:7:"members";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"A mapping from member ID to view access";s:11:"phpdoc_name";s:7:"members";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:28:"set_resource_access__members";s:11:"description";s:41:"Set resource view access on the resource.";s:5:"flags";a:0:{}}s:28:"get_resource_access__members";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:28:"get_resource_access__members";s:11:"description";s:41:"Get resource view access on the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A mapping from member ID to view access";}}s:25:"reset_resource_privileges";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:25:"reset_resource_privileges";s:11:"description";s:61:"Reset resource privileges on the resource for all usergroups.";s:5:"flags";a:0:{}}s:32:"_compute_privilege_preset_scheme";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:32:"_compute_privilege_preset_scheme";s:11:"description";s:62:"Work out what a privilege preset means for a kind of resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:101:"A mapping from privilege to minimum preset level required for privilege activation (null: unworkable)";}}s:35:"set_resource_privileges_from_preset";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:13:"group_presets";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:90:"A mapping from group ID to preset value. Preset values are 0 (read only) to 3 (moderation)";s:11:"phpdoc_name";s:13:"group_presets";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:35:"set_resource_privileges_from_preset";s:11:"description";s:54:"Set resource privileges from a preset on the resource.";s:5:"flags";a:0:{}}s:23:"set_resource_privileges";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:14:"group_settings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:57:"A map between group ID, and a map of privilege to setting";s:11:"phpdoc_name";s:14:"group_settings";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:23:"set_resource_privileges";s:11:"description";s:40:"Set resource privileges on the resource.";s:5:"flags";a:0:{}}s:23:"get_resource_privileges";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:23:"get_resource_privileges";s:11:"description";s:45:"Get the resource privileges for the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A map between group ID, and a map of privilege to setting";}}s:44:"set_resource_privileges_from_preset__members";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:14:"member_presets";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:91:"A mapping from member ID to preset value. Preset values are 0 (read only) to 3 (moderation)";s:11:"phpdoc_name";s:14:"member_presets";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:44:"set_resource_privileges_from_preset__members";s:11:"description";s:93:"Set resource privileges from a preset so that a member has custom privileges on the resource.";s:5:"flags";a:0:{}}s:32:"set_resource_privileges__members";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:15:"member_settings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:58:"A map between member ID, and a map of privilege to setting";s:11:"phpdoc_name";s:15:"member_settings";}i:2;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:3;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:32:"set_resource_privileges__members";s:11:"description";s:81:"Set a resource privilege so that a member has a custom privilege on the resource.";s:5:"flags";a:0:{}}s:32:"get_resource_privileges__members";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:103:"Resource filename (assumed to be of a folder type) (null: $resource_type & $category specified instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:13:"resource_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:53:"The resource type (null: $filename specified instead)";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:7:{s:4:"name";s:8:"category";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:51:"The resource ID (null: $filename specified instead)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:32:"get_resource_privileges__members";s:11:"description";s:88:"Get the resource privileges for all members that have custom privileges on the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"A map between member ID, and a map of privilege to setting";}}s:14:"file_load_json";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:14:"file_load_json";s:11:"description";s:105:"Load function for resource-fs (for files). Finds the data for some resource from a resource-fs JSON file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Resource data (false: error)";}}s:16:"folder_load_json";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:16:"folder_load_json";s:11:"description";s:109:"Load function for resource-fs (for folders). Finds the data for some resource from a resource-fs JSON folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Resource data (false: error)";}}s:14:"file_save_json";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Resource data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:14:"file_save_json";s:11:"description";s:104:"Save function for resource-fs (for files). Parses the data for some resource to a resource-fs JSON file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:9:"file_save";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"The path to save at (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:15:"search_label_as";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:126:"Whether to look for existing records using $filename as a label and this resource type (null: $filename is a strict file name)";s:11:"phpdoc_name";s:15:"search_label_as";}i:4;a:7:{s:4:"name";s:11:"search_path";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:50:"Search path (null: the same as the path saving at)";s:11:"phpdoc_name";s:11:"search_path";}}s:4:"name";s:9:"file_save";s:11:"description";s:42:"Save function for resource-fs (for files).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:16:"folder_save_json";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Resource data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:16:"folder_save_json";s:11:"description";s:108:"Save function for resource-fs (for folders). Parses the data for some resource to a resource-fs JSON folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:11:"folder_save";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{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:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"Properties";s:11:"phpdoc_name";s:10:"properties";}i:3;a:7:{s:4:"name";s:15:"search_label_as";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:126:"Whether to look for existing records using $filename as a label and this resource type (null: $filename is a strict file name)";s:11:"phpdoc_name";s:15:"search_label_as";}i:4;a:7:{s:4:"name";s:11:"search_path";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:50:"Search path (null: the same as the path saving at)";s:11:"phpdoc_name";s:11:"search_path";}}s:4:"name";s:11:"folder_save";s:11:"description";s:44:"Save function for resource-fs (for folders).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~ID_TEXT";s:11:"description";s:76:"The resource ID (false: error, could not create via these properties / here)";}}s:21:"_resource_load_extend";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:21:"Details of properties";s:11:"phpdoc_name";s:10:"properties";}i:3;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:4;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The path (blank: root / not applicable)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:21:"_resource_load_extend";s:11:"description";s:88:"Extend a resource with extra properties from standard features a resource type supports.";s:5:"flags";a:0:{}}s:25:"_resource_save_extend_pre";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:45:"Details of properties (returned by reference)";s:11:"phpdoc_name";s:10:"properties";}i:1;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:3;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:5:"label";}}s:4:"name";s:25:"_resource_save_extend_pre";s:11:"description";s:80:"Modify standard properties as may be needed by implications of extra properties.";s:5:"flags";a:0:{}}s:21:"_resource_save_extend";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:3;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:5:"label";}i:4;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Details of properties";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:21:"_resource_save_extend";s:11:"description";s:70:"Save extra properties from standard features a resource type supports.";s:5:"flags";a:0:{}}s:35:"_custom_fields_enumerate_properties";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.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:17:"The resource type";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:35:"_custom_fields_enumerate_properties";s:11:"description";s:34:"Find details of custom properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"Details of properties";}}s:19:"_custom_fields_load";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:2:{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:17:"The resource type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_custom_fields_load";s:11:"description";s:23:"Load custom properties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Loaded properties";}}s:19:"_custom_fields_save";a:5:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{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:17:"The resource type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Filename";s:11:"phpdoc_name";s:8:"filename";}i:3;a:5:{s:4:"name";s:5:"label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"Resource label";s:11:"phpdoc_name";s:5:"label";}i:4;a:5:{s:4:"name";s:10:"properties";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"Properties to save";s:11:"phpdoc_name";s:10:"properties";}}s:4:"name";s:19:"_custom_fields_save";s:11:"description";s:23:"Save custom properties.";s:5:"flags";a:0:{}}s:7:"listing";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:7:"listing";s:11:"description";s:60:"Standard Commandr-fs listing function for Commandr-fs hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:44:"The final directory listing (false: failure)";}}s:14:"make_directory";a:6:{s:8:"filename";s:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:12:"new_dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The new directory name";s:11:"phpdoc_name";s:12:"new_dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:14:"make_directory";s:11:"description";s:71:"Standard Commandr-fs directory creation function for Commandr-fs hooks.";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:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:8:"dir_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The directory name";s:11:"phpdoc_name";s:8:"dir_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:70:"Standard Commandr-fs directory removal function for Commandr-fs hooks.";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:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:9:"read_file";s:11:"description";s:65:"Standard Commandr-fs file reading function for Commandr-fs hooks.";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:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;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 new file contents";s:11:"phpdoc_name";s:8:"contents";}i:4;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:10:"write_file";s:11:"description";s:65:"Standard Commandr-fs file writing function for Commandr-fs hooks.";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:34:"sources/resource_fs_base_class.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The current meta-directory path";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The root node of the current meta-directory";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file name";s:11:"phpdoc_name";s:9:"file_name";}i:3;a:5:{s:4:"name";s:11:"commandr_fs";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:45:"A reference to the Commandr filesystem object";s:11:"phpdoc_name";s:11:"commandr_fs";}}s:4:"name";s:11:"remove_file";s:11:"description";s:65:"Standard Commandr-fs file removal function for Commandr-fs hooks.";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:16:"Resource_fs_base";s:7:"comment";b:1;}s:22:"RevisionEngineDatabase";a:3:{s:9:"functions";a:12:{s:11:"__construct";a:5:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:10:"is_log_mod";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether the logs are done via the forum moderator's log.";s:11:"phpdoc_name";s:10:"is_log_mod";}i:1;a:7:{s:4:"name";s:2:"db";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:78:"Database connection to use (null: work out using norms for $is_log_mod value).";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:7:"enabled";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"check_privilege";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to check privileges.";s:11:"phpdoc_name";s:15:"check_privilege";}}s:4:"name";s:7:"enabled";s:11:"description";s:56:"Find whether revisions are enabled for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether revisions are enabled.";}}s:12:"add_revision";a:5:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Resource type.";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:113:"Category ID (e.g. a page or a topic). May be the same as $resource_id if the revision is for the category itself.";s:11:"phpdoc_name";s:11:"category_id";}i:3;a:5:{s:4:"name";s:14:"original_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:102:"Title before revision (of the resource being edited, not the category) (blank: very common, no title).";s:11:"phpdoc_name";s:14:"original_title";}i:4;a:5:{s:4:"name";s:13:"original_text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Text before revision.";s:11:"phpdoc_name";s:13:"original_text";}i:5;a:5:{s:4:"name";s:22:"original_content_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:99:"Owner of the content (gathered so if deleted we can still see some meta context for this resource).";s:11:"phpdoc_name";s:22:"original_content_owner";}i:6;a:5:{s:4:"name";s:26:"original_content_timestamp";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:112:"Original timestamp of the content (gathered so if deleted we can still see some meta context for this resource).";s:11:"phpdoc_name";s:26:"original_content_timestamp";}i:7;a:5:{s:4:"name";s:6:"log_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:72:"Log ID (null: no ID, meaning actually we cannot save a revision at all).";s:11:"phpdoc_name";s:6:"log_id";}}s:4:"name";s:12:"add_revision";s:11:"description";s:15:"Add a revision.";s:5:"flags";a:0:{}}s:15:"delete_revision";a:5:{s:8:"filename";s:37:"sources/revisions_engine_database.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:12:"Revision ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"delete_revision";s:11:"description";s:29:"Delete a particular revision.";s:5:"flags";a:0:{}}s:14:"find_revisions";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:8:{i:0;a:7:{s:4:"name";s:14:"resource_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:41:"Allowed resource types (null: no filter).";s:11:"phpdoc_name";s:14:"resource_types";}i:1;a:7:{s:4:"name";s:11:"resource_id";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:30:"Resource ID (null: no filter).";s:11:"phpdoc_name";s:11:"resource_id";}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:7:"?string";s:11:"description";s:30:"Category ID (null: no filter).";s:11:"phpdoc_name";s:11:"category_id";}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:28:"Member ID (null: no filter).";s:11:"phpdoc_name";s:9:"member_id";}i:4;a:7:{s:4:"name";s:11:"revision_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 for a particular revision to retrieve (null: no filter).";s:11:"phpdoc_name";s:11:"revision_id";}i:5;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:8:"?integer";s:11:"description";s:35:"Maximum to return (null: no limit).";s:11:"phpdoc_name";s:3:"max";}i:6;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:13:"Start offset.";s:11:"phpdoc_name";s:5:"start";}i:7;a:7:{s:4:"name";s:12:"limited_data";s:7:"default";s:13:"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 to only collect IDs and other simple low-bandwidth data.";s:11:"phpdoc_name";s:12:"limited_data";}}s:4:"name";s:14:"find_revisions";s:11:"description";s:32:"Retrieve revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"List of revision maps.";}}s:13:"has_revisions";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"resource_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Allowed resource types.";s:11:"phpdoc_name";s:14:"resource_types";}i:1;a:7:{s:4:"name";s:11:"resource_id";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:30:"Resource ID (null: no filter).";s:11:"phpdoc_name";s:11:"resource_id";}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:7:"?string";s:11:"description";s:30:"Category ID (null: no filter).";s:11:"phpdoc_name";s:11:"category_id";}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:28:"Member ID (null: no filter).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:13:"has_revisions";s:11:"description";s:41:"Find if there are revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether there are revisions.";}}s:15:"total_revisions";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"resource_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Allowed resource types.";s:11:"phpdoc_name";s:14:"resource_types";}i:1;a:7:{s:4:"name";s:11:"resource_id";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:30:"Resource ID (null: no filter).";s:11:"phpdoc_name";s:11:"resource_id";}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:7:"?string";s:11:"description";s:30:"Category ID (null: no filter).";s:11:"phpdoc_name";s:11:"category_id";}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:28:"Member ID (null: no filter).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:15:"total_revisions";s:11:"description";s:38:"Find number of revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Total revisions.";}}s:21:"find_revision_for_log";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"log_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:26:"The action log entry's ID.";s:11:"phpdoc_name";s:6:"log_id";}}s:4:"name";s:21:"find_revision_for_log";s:11:"description";s:53:"Retrieve revisions for a particular action log entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"A revision map (null: not found).";}}s:32:"find_most_recent_category_change";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Resource type.";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Category ID.";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:32:"find_most_recent_category_change";s:11:"description";s:40:"Find most recent revision in a category.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:39:"Last revision (0 if no revisions ever).";}}s:26:"recategorise_old_revisions";a:5:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Resource type.";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:15:"new_category_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Category ID.";s:11:"phpdoc_name";s:15:"new_category_id";}}s:4:"name";s:26:"recategorise_old_revisions";s:11:"description";s:154:"Move some revisions to a different category.Typically this is when we are moving posts and we want the revisions to show up for the new topic they are in.";s:5:"flags";a:0:{}}s:19:"ui_browse_revisions";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:29:"Screen title (null: default).";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:14:"_fields_titles";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:36:"List of field titles (i.e. columns).";s:11:"phpdoc_name";s:14:"_fields_titles";}i:2;a:5:{s:4:"name";s:14:"resource_types";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:41:"List of resource types (null: no filter).";s:11:"phpdoc_name";s:14:"resource_types";}i:3;a:5:{s:4:"name";s:12:"row_renderer";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:32:"Callback for rendering out rows.";s:11:"phpdoc_name";s:12:"row_renderer";}i:4;a:7:{s:4:"name";s:11:"resource_id";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:30:"Resource ID (null: no filter).";s:11:"phpdoc_name";s:11:"resource_id";}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:7:"?string";s:11:"description";s:30:"Category ID (null: no filter).";s:11:"phpdoc_name";s:11:"category_id";}i:6;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:28:"Member ID (null: no filter).";s:11:"phpdoc_name";s:9:"member_id";}i:7;a:7:{s:4:"name";s:24:"category_permission_type";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:43:"Category permission type (null: no checks).";s:11:"phpdoc_name";s:24:"category_permission_type";}i:8;a:7:{s:4:"name";s:19:"include_filter_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:39:"Include a form for filtering revisions.";s:11:"phpdoc_name";s:19:"include_filter_form";}}s:4:"name";s:19:"ui_browse_revisions";s:11:"description";s:325:"Show a revisions browsing UI for particular resource types.Intended as a simple front-end browsing UI. Full details are in action-log, and restoration details are via ui_revision_undoer.Does not check permissions, assumes only low-privilege data is revealed.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:12:"Revision UI.";}}s:18:"ui_revision_undoer";a:6:{s:8:"filename";s:37:"sources/revisions_engine_database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Resource type.";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:52:"Current resource text (may be altered by reference).";s:11:"phpdoc_name";s:4:"text";}i:3;a:5:{s:4:"name";s:15:"revision_loaded";s:3:"ref";b:1;s:4:"type";s:8:"?boolean";s:11:"description";s:73:"Whether a revision was loaded, passed by reference (null: initial value).";s:11:"phpdoc_name";s:15:"revision_loaded";}}s:4:"name";s:18:"ui_revision_undoer";s:11:"description";s:96:"Browse revisions to undo one.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:3:"UI.";}}}s:4:"name";s:22:"RevisionEngineDatabase";s:7:"comment";b:1;}s:19:"RevisionEngineFiles";a:3:{s:9:"functions";a:8:{s:7:"enabled";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"check_privilege";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to check privileges.";s:11:"phpdoc_name";s:15:"check_privilege";}}s:4:"name";s:7:"enabled";s:11:"description";s:56:"Find whether revisions are enabled for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether revisions are enabled.";}}s:12:"add_revision";a:5:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:59:"ID of what is being revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}i:3;a:5:{s:4:"name";s:13:"original_text";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:48:"Text before revision (null: work out from disk).";s:11:"phpdoc_name";s:13:"original_text";}i:4;a:5:{s:4:"name";s:18:"original_timestamp";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:77:"The creation timestamp for what was just replaced (null: work out from disk).";s:11:"phpdoc_name";s:18:"original_timestamp";}}s:4:"name";s:12:"add_revision";s:11:"description";s:15:"Add a revision.";s:5:"flags";a:0:{}}s:15:"delete_revision";a:5:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:59:"ID of what is being revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:12:"Revision ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"delete_revision";s:11:"description";s:29:"Delete a particular revision.";s:5:"flags";a:0:{}}s:14:"find_revisions";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"ID of what was revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}i:3;a:7:{s:4:"name";s:6:"action";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:68:"The action the revision is for, a language string (null: no filter).";s:11:"phpdoc_name";s:6:"action";}i:4;a:7:{s:4:"name";s:13:"revision_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:79:"The creation timestamp for a particular revision to retrieve (null: no filter).";s:11:"phpdoc_name";s:13:"revision_time";}i:5;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:8:"?integer";s:11:"description";s:35:"Maximum to return (null: no limit).";s:11:"phpdoc_name";s:3:"max";}i:6;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:13:"Start offset.";s:11:"phpdoc_name";s:5:"start";}i:7;a:7:{s:4:"name";s:12:"limited_data";s:7:"default";s:13:"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 to only collect IDs and other simple low-bandwidth data.";s:11:"phpdoc_name";s:12:"limited_data";}}s:4:"name";s:14:"find_revisions";s:11:"description";s:32:"Retrieve revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"List of revision maps.";}}s:13:"has_revisions";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"ID of what was revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}}s:4:"name";s:13:"has_revisions";s:11:"description";s:41:"Find if there are revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether there are revisions.";}}s:15:"total_revisions";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"ID of what was revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}}s:4:"name";s:15:"total_revisions";s:11:"description";s:38:"Find number of revisions of something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"Number of revisions.";}}s:21:"find_revision_for_log";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"actionlog_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:26:"The action log entry's ID.";s:11:"phpdoc_name";s:12:"actionlog_id";}}s:4:"name";s:21:"find_revision_for_log";s:11:"description";s:53:"Retrieve revisions for a particular action log entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"A revision map (null: not found).";}}s:18:"ui_revision_undoer";a:6:{s:8:"filename";s:34:"sources/revisions_engine_files.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"Directory where revisions are stored.";s:11:"phpdoc_name";s:9:"directory";}i:1;a:5:{s:4:"name";s:11:"filename_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"ID of what was revised (=base filename, no extension).";s:11:"phpdoc_name";s:11:"filename_id";}i:2;a:5:{s:4:"name";s:3:"ext";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"File extension for revisable files.";s:11:"phpdoc_name";s:3:"ext";}i:3;a:5:{s:4:"name";s:6:"action";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"The action the revision is for, a language string.";s:11:"phpdoc_name";s:6:"action";}i:4;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:52:"Current resource text (may be altered by reference).";s:11:"phpdoc_name";s:4:"text";}i:5;a:7:{s:4:"name";s:15:"revision_loaded";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:8:"?boolean";s:11:"description";s:73:"Whether a revision was loaded, passed by reference (null: initial value).";s:11:"phpdoc_name";s:15:"revision_loaded";}}s:4:"name";s:18:"ui_revision_undoer";s:11:"description";s:96:"Browse revisions to undo one.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:3:"UI.";}}}s:4:"name";s:19:"RevisionEngineFiles";s:7:"comment";b:1;}s:7:"CMS_RSS";a:3:{s:9:"functions";a:7:{s:11:"__construct";a:5:{s:8:"filename";s:15:"sources/rss.php";s:10:"parameters";a:2:{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:37:"The URL to the RSS we will be reading";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:18:"is_filesystem_path";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the 'url' is actually a filesystem path";s:11:"phpdoc_name";s:18:"is_filesystem_path";}}s:4:"name";s:11:"__construct";s:11:"description";s:92:"Constructs the RSS reader: downloads the URL and parses it. Check $error after constructing.";s:5:"flags";a:0:{}}s:14:"startNameSpace";a:5:{s:8:"filename";s:15:"sources/rss.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:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:3:"N/A";s:11:"phpdoc_name";s:6:"prefix";}i:2;a:7:{s:4:"name";s:3:"uri";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:59:"The URI of the name space we are entering (null: not given)";s:11:"phpdoc_name";s:3:"uri";}}s:4:"name";s:14:"startNameSpace";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:12:"endNameSpace";a:5:{s:8:"filename";s:15:"sources/rss.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:12:"endNameSpace";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:12:"startElement";a:5:{s:8:"filename";s:15:"sources/rss.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:4:"name";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:4:"name";}i:2;a:5:{s:4:"name";s:10:"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:10:"attributes";}}s:4:"name";s:12:"startElement";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:10:"endElement";a:5:{s:8:"filename";s:15:"sources/rss.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:9:"startText";a:5:{s:8:"filename";s:15:"sources/rss.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:13:"trueStartText";a:5:{s:8:"filename";s:15:"sources/rss.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:13:"trueStartText";s:11:"description";s:49:"Parse the complete text of the inside of the tag.";s:5:"flags";a:0:{}}}s:4:"name";s:7:"CMS_RSS";s:7:"comment";b:1;}s:16:"FieldsSearchHook";a:3:{s:9:"functions";a:6:{s:22:"_get_extra_sort_fields";a:6:{s:8:"filename";s:18:"sources/search.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:6:"string";s:11:"description";s:83:"Catalogue we are searching in in (may be a special custom content fields catalogue)";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:22:"_get_extra_sort_fields";s:11:"description";s:32:"Get a list of extra sort fields.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A map between parameter name and string label";}}s:11:"_get_fields";a:6:{s:8:"filename";s:18:"sources/search.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:6:"string";s:11:"description";s:73:"Catalogue to search in (may be a special custom content fields catalogue)";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:11:"_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:37:"_get_search_parameterisation_advanced";a:6:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:83:"Catalogue we are searching in in (may be a special custom content fields catalogue)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:7:{s:4:"name";s:11:"table_alias";s:7:"default";s:1:"r";s:11:"default_raw";s:3:"'r'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:34:"Table alias for main content table";s:11:"phpdoc_name";s:11:"table_alias";}}s:4:"name";s:37:"_get_search_parameterisation_advanced";s:11:"description";s:65:"Get details needed (SQL etc) to perform an advanced field search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:60:"A big tuple of details used to search with (null: no fields)";}}s:54:"_get_search_parameterisation_advanced_for_content_type";a:5:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:83:"Catalogue we are searching in in (may be a special custom content fields catalogue)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:22:"Table clause to add to";s:11:"phpdoc_name";s:5:"table";}i:2;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:22:"Where clause to add to";s:11:"phpdoc_name";s:12:"where_clause";}i:3;a:5:{s:4:"name";s:12:"trans_fields";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:29:"Translatable fields to add to";s:11:"phpdoc_name";s:12:"trans_fields";}i:4;a:5:{s:4:"name";s:15:"nontrans_fields";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:33:"Non-translatable fields to add to";s:11:"phpdoc_name";s:15:"nontrans_fields";}}s:4:"name";s:54:"_get_search_parameterisation_advanced_for_content_type";s:11:"description";s:141:"Get details needed (SQL etc) to perform an advanced field search for custom content fields (builds on _get_search_parameterisation_advanced).";s:5:"flags";a:0:{}}s:18:"_handle_date_check";a:5:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The field name of the timestamp field in the database";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:49:"Additional where clause will be written into here";s:11:"phpdoc_name";s:12:"where_clause";}}s:4:"name";s:18:"_handle_date_check";s:11:"description";s:46:"Insert a date range check into a WHERE clause.";s:5:"flags";a:0:{}}s:26:"_handle_date_check_runtime";a:6:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:2:{i:0;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:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:23:"Timestamp to compare to";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:26:"_handle_date_check_runtime";s:11:"description";s:44:"Do a date range check for a known timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether the date matches the requirements of $cutoff";}}}s:4:"name";s:16:"FieldsSearchHook";s:7:"comment";b:1;}s:17:"Hook_sitemap_base";a:3:{s:9:"functions";a:13:{s:21:"_request_page_details";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The codename of the page to load";s:11:"phpdoc_name";s:4:"page";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The zone the page is being loaded in";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:21:"_request_page_details";s:11:"description";s:70:"Take the specified parameters, and try to find the corresponding page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:41:"A list of details (false: page not found)";}}s:29:"_is_page_omitted_from_sitemap";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:2:{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:36:"The zone the page is being loaded in";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:32:"The codename of the page to load";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:29:"_is_page_omitted_from_sitemap";s:11:"description";s:55:"Find whether a page should be omitted from the sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the page should be omitted.";}}s:9:"is_active";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_active";s:11:"description";s:32:"Find whether the hook is active.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the hook is active.";}}s:19:"_make_zone_concrete";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:1;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The zone in the recurse tree (replaced by reference).";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:1;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The page-link (replaced by reference).";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:19:"_make_zone_concrete";s:11:"description";s:125:"Remap '_SEARCH' zones if we can derive the zone from the page-link / or fix _SEARCH in the page-link if there's a known zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:79:"The page name (only returned because it could also be useful, saves some code).";}}s:17:"handles_page_link";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:19:"_get_sitemap_object";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"hook";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:75:"The hook, i.e. the Sitemap object type. Usually the same as a content type.";s:11:"phpdoc_name";s:4:"hook";}}s:4:"name";s:19:"_get_sitemap_object";s:11:"description";s:89:"Get a particular Sitemap object. Used for easily tying in a different kind of child node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"object";s:11:"description";s:19:"The Sitemap object.";}}s:17:"get_virtual_nodes";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:17:"get_virtual_nodes";s:11:"description";s:162:"Find all nodes at the top level position in the Sitemap for this hook.May be a single node (i.e. a category root) or multiple nodes (if there's a flat structure).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:53:"List of node structures (null: working via callback).";}}s:8:"get_node";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:13:"recurse_level";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:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:7:{s:4:"name";s:3:"row";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:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:10;a:7:{s:4:"name";s:13:"return_anyway";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:242:"Whether to return the structure even if there was a callback. Do not pass this setting through via recursion due to memory concerns, it is used only to gather information to detect and prevent parent/child duplication of default entry points.";s:11:"phpdoc_name";s:13:"return_anyway";}}s:4:"name";s:8:"get_node";s:11:"description";s:42:"Find details of a position in the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}s:23:"_check_node_permissions";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"struct";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Node structure";s:11:"phpdoc_name";s:6:"struct";}}s:4:"name";s:23:"_check_node_permissions";s:11:"description";s:95:"Check the permissions of the node structure, returning false if they fail for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the permissions pass";}}s:18:"get_privilege_page";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:18:"get_privilege_page";s:11:"description";s:146:"Get the permission page that nodes matching $page_link in this hook are tied to.The permission page is where privileges may be overridden against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"The permission page (null: none)";}}s:39:"extract_child_page_link_permission_pair";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:39:"extract_child_page_link_permission_pair";s:11:"description";s:73:"Convert a page-link to a category ID and category permission module type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The pair (null: permission modules not handled)";}}s:29:"_load_row_from_page_groupings";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:34:"Faked database row (null: derive).";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The zone.";s:11:"phpdoc_name";s:4:"zone";}i:2;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The page.";s:11:"phpdoc_name";s:4:"page";}i:3;a:7:{s:4:"name";s:4:"type";s:7:"default";s:6:"browse";s:11:"default_raw";s:8:"'browse'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The type.";s:11:"phpdoc_name";s:4:"type";}i:4;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:23:"The ID (null: unknown).";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:29:"_load_row_from_page_groupings";s:11:"description";s:27:"Find details for this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:34:"Faked database row (null: derive).";}}s:20:"_ameliorate_with_row";a:5:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:1;a:5:{s:4:"name";s:6:"struct";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:10:"Structure.";s:11:"phpdoc_name";s:6:"struct";}i:2;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:50:"Faked database row (null: we don't have row data).";s:11:"phpdoc_name";s:3:"row";}i:3;a:5:{s:4:"name";s:11:"meta_gather";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}}s:4:"name";s:20:"_ameliorate_with_row";s:11:"description";s:79:"Extend the node structure with added details from our row data (if we have it).";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_sitemap_base";s:7:"comment";b:1;}s:20:"Hook_sitemap_content";a:3:{s:9:"functions";a:7:{s:17:"handles_page_link";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"handles_page_link";s:11:"description";s:49:"Find if a page-link will be covered by this node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:26:"A SITEMAP_NODE_* constant.";}}s:17:"_get_page_link_id";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The page-link.";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:17:"_get_page_link_id";s:11:"description";s:33:"Get a content ID via a page-link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:23:"The ID (null: unknown).";}}s:13:"_get_cma_info";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_get_cma_info";s:11:"description";s:38:"Get the CMA info for our content hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"The CMA info.";}}s:8:"_get_row";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The content ID.";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:8:"_get_row";s:11:"description";s:38:"Get the database row for some content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"The content row.";}}s:30:"_create_partial_node_structure";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:5:{s:4:"name";s:8:"callback";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:5:{s:4:"name";s:16:"valid_node_types";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:5:{s:4:"name";s:12:"child_cutoff";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:5:{s:4:"name";s:17:"max_recurse_depth";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:5:{s:4:"name";s:13:"recurse_level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:6;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:7;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:8;a:5:{s:4:"name";s:11:"meta_gather";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:9;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:30:"_create_partial_node_structure";s:11:"description";s:73:"Pre-fill part of the node structure, from what we know from the CMA hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"A tuple: content ID, row, partial node structure (null: filtered).";}}s:19:"_get_children_nodes";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The content ID.";s:11:"phpdoc_name";s:10:"content_id";}i:1;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page-link we are finding.";s:11:"phpdoc_name";s:9:"page_link";}i:2;a:5:{s:4:"name";s:8:"callback";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:3;a:5:{s:4:"name";s:16:"valid_node_types";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:4;a:5:{s:4:"name";s:12:"child_cutoff";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:5;a:5:{s:4:"name";s:17:"max_recurse_depth";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:6;a:5:{s:4:"name";s:13:"recurse_level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:158:"Our recursion depth (used to limit recursion, or to calculate importance of page-link, used for instance by XML Sitemap [deeper is typically less important]).";s:11:"phpdoc_name";s:13:"recurse_level";}i:7;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:8;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:9;a:5:{s:4:"name";s:11:"meta_gather";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}i:10;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:28:"Database row (null: lookup).";s:11:"phpdoc_name";s:3:"row";}i:11;a:7:{s:4:"name";s:19:"extra_where_entries";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:54:"Extra SQL piece for considering which entries to load.";s:11:"phpdoc_name";s:19:"extra_where_entries";}i:12;a:7:{s:4:"name";s:25:"explicit_order_by_entries";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:48:"Order by for entries (null: alphabetical title).";s:11:"phpdoc_name";s:25:"explicit_order_by_entries";}i:13;a:7:{s:4:"name";s:31:"explicit_order_by_subcategories";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:"Order by for categories (null: alphabetical title).";s:11:"phpdoc_name";s:31:"explicit_order_by_subcategories";}}s:4:"name";s:19:"_get_children_nodes";s:11:"description";s:63:"Get a list of child nodes, from what we know from the CMA hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"Child nodes (null: not retrieved yet).";}}s:39:"extract_child_page_link_permission_pair";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:39:"extract_child_page_link_permission_pair";s:11:"description";s:73:"Convert a page-link to a category ID and category permission module type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The pair (null: permission modules not handled)";}}}s:4:"name";s:20:"Hook_sitemap_content";s:7:"comment";b:1;}s:8:"Tempcode";a:3:{s:9:"functions";a:18:{s:11:"__construct";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"details";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:"Pair: Code to preexecute, Initialisation seq-parts (null: start as empty)";s:11:"phpdoc_name";s:7:"details";}}s:4:"name";s:11:"__construct";s:11:"description";s:23:"Constructor of Tempcode";s:5:"flags";a:0:{}}s:7:"__sleep";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"__sleep";s:11:"description";s:43:"PHP magic function to handle serialisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"What is to be serialised";}}s:7:"decache";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"decache";s:11:"description";s:58:"Remove any internal evaluation cachings within the object.";s:5:"flags";a:0:{}}s:10:"parse_from";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:26:"Code string (input stream)";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:30:"Start position of input string";s:11:"phpdoc_name";s:3:"pos";}i:2;a:5:{s:4:"name";s:3:"len";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:28:"End position of input string";s:11:"phpdoc_name";s:3:"len";}}s:4:"name";s:10:"parse_from";s:11:"description";s:57:"Parse a single symbol from an input stream and append it.";s:5:"flags";a:0:{}}s:6:"attach";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"attach";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:29:"The Tempcode/string to attach";s:11:"phpdoc_name";s:6:"attach";}i:1;a:7:{s:4:"name";s:17:"avoid_child_merge";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"If we've already merged the children from what we're attaching into the child tree (at bind stage)";s:11:"phpdoc_name";s:17:"avoid_child_merge";}}s:4:"name";s:6:"attach";s:11:"description";s:74:"Attach the specified Tempcode to the right of the current Tempcode object.";s:5:"flags";a:0:{}}s:11:"to_assembly";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"to_assembly";s:11:"description";s:201:"Assemble the current Tempcode object into a single serialised (compiled) Tempcode storage representation (parameters and certain symbols and not evaluated). The output of the function is language-tied.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The assembly result";}}s:22:"from_assembly_executed";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{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:16:"The file to load";s:11:"phpdoc_name";s:4:"file";}i:1;a:5:{s:4:"name";s:21:"forced_reload_details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:50:"List of parameters for a forced reload if required";s:11:"phpdoc_name";s:21:"forced_reload_details";}}s:4:"name";s:22:"from_assembly_executed";s:11:"description";s:166:"The opposite of to_assembly - it decodes a Tempcode storage representation and turns it into a proper Tempcode object. This version handles the result of evaled code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:67:"Success status (it can fail, if the compiled cache file is corrupt)";}}s:20:"_mark_all_as_escaped";a:5:{s:8:"filename";s:20:"sources/tempcode.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:34:"Whether this is the top-level call";s:11:"phpdoc_name";s:9:"top_level";}}s:4:"name";s:20:"_mark_all_as_escaped";s:11:"description";s:146:"Recursively mark all parameters in this Tempcode as escaped. This is needed when loading from cache, as escape tainting data would have been lost.";s:5:"flags";a:0:{}}s:13:"from_assembly";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"raw_data";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:22:"The assembled Tempcode";s:11:"phpdoc_name";s:8:"raw_data";}i:1;a:7:{s:4:"name";s:13:"allow_failure";s:7:"default";s:13:"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:"Return error code on failure, rather than exiting";s:11:"phpdoc_name";s:13:"allow_failure";}}s:4:"name";s:13:"from_assembly";s:11:"description";s:118:"The opposite of to_assembly - it decodes a Tempcode storage representation and turns it into a proper Tempcode object.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:67:"Success status (it can fail, if the compiled cache file is corrupt)";}}s:13:"parameterless";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{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:23:"Offset to the construct";s:11:"phpdoc_name";s:2:"at";}}s:4:"name";s:13:"parameterless";s:11:"description";s:63:"Find whether a construct within this Tempcode is parameterless.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether it is parameterless";}}s:4:"bind";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:43:"Map of parameters to bind parameter bits to";s:11:"phpdoc_name";s:10:"parameters";}i:1;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The codename of the template this Tempcode is from";s:11:"phpdoc_name";s:8:"codename";}}s:4:"name";s:4:"bind";s:11:"description";s:108:"Bind the parameter bits, or recursively bind children (doesn't change self, returns a bound Tempcode object)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The new bound Tempcode object";}}s:13:"singular_bind";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"parameter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Named parameter";s:11:"phpdoc_name";s:9:"parameter";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Specific value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:13:"singular_bind";s:11:"description";s:232:"Replace the named parameter with a specific value. Hardly used, but still important. Note that this will bind to all kinds of things that might not normally take named parameters, like symbols; this should not cause problems though.";s:5:"flags";a:0:{}}s:27:"handle_symbol_preprocessing";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"handle_symbol_preprocessing";s:11:"description";s:68:"Scan this Tempcode for anything that needs to be symbol-preprocessed";s:5:"flags";a:0:{}}s:14:"is_empty_shell";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"is_empty_shell";s:11:"description";s:304:"Find whether the Tempcode object entirely empty (devoid of anything evaluable), not just evaluates as empty. This is also useful if you want to avoid early evaluation, which will mess up GET/SET flow.Does not perform an evaluation, so will not trigger any early pre-processing or out-of-order evaluation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether it is entirely empty";}}s:8:"is_empty";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"is_empty";s:11:"description";s:49:"Find whether the Tempcode object is blank or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether the Tempcode object is empty";}}s:10:"__toString";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"__toString";s:11:"description";s:65:"Parses the current Tempcode object, then return the parsed string";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The evaluated thing.";}}s:8:"evaluate";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:12:"current_lang";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:61:"The language to evaluate with (null: current user's language)";s:11:"phpdoc_name";s:12:"current_lang";}}s:4:"name";s:8:"evaluate";s:11:"description";s:65:"Parses the current Tempcode object, then return the parsed string";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:42:"The evaluated thing. Voila, it's all over!";}}s:13:"evaluate_echo";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"current_lang";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:60:"The language to evaluate with (null: current users language)";s:11:"phpdoc_name";s:12:"current_lang";}i:1;a:7:{s:4:"name";s:13:"stop_if_stuck";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:113:"Whether to stop if we are stuck of a seq_part with parameters yet-unbound, and to continue from last resume point";s:11:"phpdoc_name";s:13:"stop_if_stuck";}}s:4:"name";s:13:"evaluate_echo";s:11:"description";s:63:"Parse the current Tempcode object, then echo it to the browser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:52:"Blank string. Allows chaining within echo statements";}}}s:4:"name";s:8:"Tempcode";s:7:"comment";b:1;}s:9:"CMS_Topic";a:3:{s:9:"functions";a:20:{s:11:"__construct";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}s:21:"set_rendering_context";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"rendering_context";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Rendering context";s:11:"phpdoc_name";s:17:"rendering_context";}}s:4:"name";s:21:"set_rendering_context";s:11:"description";s:24:"Set a rendering context.";s:5:"flags";a:0:{}}s:23:"render_as_comment_topic";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:12:{i:0;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:30:"Content type to show topic for";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"Content ID of content type to show topic for";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}i:3;a:5:{s:4:"name";s:24:"invisible_if_no_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether the comment box will be invisible if there are not yet any comments (and you're not staff)";s:11:"phpdoc_name";s:24:"invisible_if_no_comments";}i:4;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:10:"forum_name";}i:5;a:5:{s:4:"name";s:12:"post_warning";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:57:"The default post to use (null: standard courtesy warning)";s:11:"phpdoc_name";s:12:"post_warning";}i:6;a:5:{s:4:"name";s:18:"preloaded_comments";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:91:"The raw comment array (null: lookup). This is useful if we want to pass it through a filter";s:11:"phpdoc_name";s:18:"preloaded_comments";}i:7;a:5:{s:4:"name";s:14:"explicit_allow";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to skip permission checks";s:11:"phpdoc_name";s:14:"explicit_allow";}i:8;a:5:{s:4:"name";s:7:"reverse";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to reverse the posts";s:11:"phpdoc_name";s:7:"reverse";}i:9;a:5:{s:4:"name";s:19:"highlight_by_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"Member to highlight the posts of (null: none)";s:11:"phpdoc_name";s:19:"highlight_by_member";}i:10;a:5:{s:4:"name";s:13:"allow_reviews";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to allow ratings along with the comment (like reviews)";s:11:"phpdoc_name";s:13:"allow_reviews";}i:11;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:31:"Maximum to load (null: default)";s:11:"phpdoc_name";s:17:"num_to_show_limit";}}s:4:"name";s:23:"render_as_comment_topic";s:11:"description";s:23:"Render a comment topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The Tempcode for the comment topic";}}s:23:"render_posts_from_topic";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:12:{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";}i:1;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Maximum to load";s:11:"phpdoc_name";s:17:"num_to_show_limit";}i:2;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}i:3;a:5:{s:4:"name";s:24:"invisible_if_no_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether the comment box will be invisible if there are not yet any comments (and you're not staff)";s:11:"phpdoc_name";s:24:"invisible_if_no_comments";}i:4;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:10:"forum_name";}i:5;a:5:{s:4:"name";s:18:"preloaded_comments";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:91:"The raw comment array (null: lookup). This is useful if we want to pass it through a filter";s:11:"phpdoc_name";s:18:"preloaded_comments";}i:6;a:5:{s:4:"name";s:7:"reverse";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to reverse the posts";s:11:"phpdoc_name";s:7:"reverse";}i:7;a:5:{s:4:"name";s:9:"may_reply";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether the current user may reply to the topic (influences what buttons show)";s:11:"phpdoc_name";s:9:"may_reply";}i:8;a:5:{s:4:"name";s:19:"highlight_by_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"Member to highlight the posts of (null: none)";s:11:"phpdoc_name";s:19:"highlight_by_member";}i:9;a:5:{s:4:"name";s:13:"allow_reviews";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to allow ratings along with the comment (like reviews)";s:11:"phpdoc_name";s:13:"allow_reviews";}i:10;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"List of post IDs to load";s:11:"phpdoc_name";s:5:"posts";}i:11;a:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:27:"Parent node being loaded to";s:11:"phpdoc_name";s:9:"parent_id";}}s:4:"name";s:23:"render_posts_from_topic";s:11:"description";s:77:"Render posts from a topic (usually tied into AJAX, to get iterative results).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The Tempcode for the comment topic";}}s:15:"_get_sort_order";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"reverse";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:93:"Whether to show in reverse date order (affects default search order only) (null: read config)";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:15:"_get_sort_order";s:11:"description";s:19:"Get the sort order.";s:5:"flags";a:0:{}s:6:"return";a:3:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Sort order";s:3:"set";s:30:"relevance rating newest oldest";}}s:15:"load_from_topic";a:6:{s:8:"filename";s:18:"sources/topics.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:10:"?AUTO_LINK";s:11:"description";s:49:"Topic ID (null: none yet, set up empty structure)";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Maximum to load";s:11:"phpdoc_name";s:17:"num_to_show_limit";}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:32:"Pagination start if non-threaded";s:11:"phpdoc_name";s:5:"start";}i:3;a:7:{s:4:"name";s:7:"reverse";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:93:"Whether to show in reverse date order (affects default search order only) (null: read config)";s:11:"phpdoc_name";s:7:"reverse";}i:4;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:5;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:58:"Whether to allow spacer posts to flow through the renderer";s:11:"phpdoc_name";s:21:"load_spacer_posts_too";}}s:4:"name";s:15:"load_from_topic";s:11:"description";s:27:"Load from a given topic ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:34:"inject_posts_for_scoring_algorithm";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Review titles";s:11:"phpdoc_name";s:5:"posts";}}s:4:"name";s:34:"inject_posts_for_scoring_algorithm";s:11:"description";s:76:"Put in posts to our scoring algorithm in preparation for shooting out later.";s:5:"flags";a:0:{}}s:27:"set_reviews_rating_criteria";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:23:"reviews_rating_criteria";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Review criteria";s:11:"phpdoc_name";s:23:"reviews_rating_criteria";}}s:4:"name";s:27:"set_reviews_rating_criteria";s:11:"description";s:57:"Set the particular review criteria we'll be dealing with.";s:5:"flags";a:0:{}}s:12:"render_posts";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:50:"Number of posts to show initially (null: no limit)";s:11:"phpdoc_name";s:17:"num_to_show_limit";}i:1;a:5:{s:4:"name";s:16:"max_thread_depth";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"Maximum thread depth";s:11:"phpdoc_name";s:16:"max_thread_depth";}i:2;a:5:{s:4:"name";s:9:"may_reply";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether the current user may reply to the topic (influences what buttons show)";s:11:"phpdoc_name";s:9:"may_reply";}i:3;a:5:{s:4:"name";s:19:"highlight_by_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"Member to highlight the posts of (null: none)";s:11:"phpdoc_name";s:19:"highlight_by_member";}i:4;a:5:{s:4:"name";s:29:"all_individual_review_ratings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Review ratings rows";s:11:"phpdoc_name";s:29:"all_individual_review_ratings";}i:5;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:28:"ID of forum this topic in in";s:11:"phpdoc_name";s:8:"forum_id";}i:6;a:5:{s:4:"name";s:10:"topic_info";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:43:"The topic row (null: not running Conversr).";s:11:"phpdoc_name";s:10:"topic_info";}i:7;a:7:{s:4:"name";s:14:"parent_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:55:"Only show posts under here (null: show posts from root)";s:11:"phpdoc_name";s:14:"parent_post_id";}i:8;a:7:{s:4:"name";s:19:"maybe_missing_links";s:7:"default";s:13:"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 just render everything as flat (used when doing AJAX post loading). NOT actually used since we wrote better post-orphaning-fixing code.";s:11:"phpdoc_name";s:19:"maybe_missing_links";}}s:4:"name";s:12:"render_posts";s:11:"description";s:15:"Render a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:118:"Tuple: Rendered topic, serialized options to render more posts, secure hash of serialized options to prevent tampering";}}s:22:"_decide_what_to_render";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:33:"Number of posts to show initially";s:11:"phpdoc_name";s:17:"num_to_show_limit";}i:1;a:5:{s:4:"name";s:5:"queue";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:41:"Posts to choose from, in preference order";s:11:"phpdoc_name";s:5:"queue";}}s:4:"name";s:22:"_decide_what_to_render";s:11:"description";s:38:"Filter posts, deciding what to render.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"Chosen posts";}}s:29:"_grab_at_and_above_and_remove";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:24:"Reference post in thread";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:5:"queue";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:32:"Posts to choose from (the queue)";s:11:"phpdoc_name";s:5:"queue";}i:2;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:38:"Posts picked out (passed by reference)";s:11:"phpdoc_name";s:5:"posts";}}s:4:"name";s:29:"_grab_at_and_above_and_remove";s:11:"description";s:62:"Grab posts at or above a reference post and remove from queue.";s:5:"flags";a:0:{}}s:23:"_grab_at_and_underneath";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"parent_post_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:37:"Reference post in thread (null: root)";s:11:"phpdoc_name";s:14:"parent_post_id";}i:1;a:5:{s:4:"name";s:8:"posts_in";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"Posts to choose from";s:11:"phpdoc_name";s:8:"posts_in";}}s:4:"name";s:23:"_grab_at_and_underneath";s:11:"description";s:45:"Grab posts at or underneath a reference post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Relevant posts";}}s:23:"_grab_full_post_details";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Posts to load";s:11:"phpdoc_name";s:5:"posts";}}s:4:"name";s:23:"_grab_full_post_details";s:11:"description";s:72:"Load full details for posts (we had not done so far to preserve memory).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Upgraded posts";}}s:22:"_arrange_posts_in_tree";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:37:"Reference post in thread (null: root)";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:101:"Posts we will be rendering and have not arranged yet (only some of which will be underneath $post_id)";s:11:"phpdoc_name";s:5:"posts";}i:2;a:5:{s:4:"name";s:5:"queue";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"Posts we won't be rendering";s:11:"phpdoc_name";s:5:"queue";}i:3;a:5:{s:4:"name";s:16:"max_thread_depth";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:26:"Maximum depth to render to";s:11:"phpdoc_name";s:16:"max_thread_depth";}i:4;a:7:{s:4:"name";s:5:"depth";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:26:"Current depth in recursion";s:11:"phpdoc_name";s:5:"depth";}}s:4:"name";s:22:"_arrange_posts_in_tree";s:11:"description";s:78:"Arrange posts underneath a post in the thread (not including the post itself).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"Array structure of rendered posts";}}s:17:"_render_post_tree";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:17:"num_to_show_limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Maximum to load";s:11:"phpdoc_name";s:17:"num_to_show_limit";}i:1;a:5:{s:4:"name";s:4:"tree";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Tree structure of posts";s:11:"phpdoc_name";s:4:"tree";}i:2;a:5:{s:4:"name";s:9:"may_reply";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether the current user may reply to the topic (influences what buttons show)";s:11:"phpdoc_name";s:9:"may_reply";}i:3;a:5:{s:4:"name";s:19:"highlight_by_member";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:55:"Only show posts under here (null: show posts from root)";s:11:"phpdoc_name";s:19:"highlight_by_member";}i:4;a:5:{s:4:"name";s:29:"all_individual_review_ratings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Review ratings rows";s:11:"phpdoc_name";s:29:"all_individual_review_ratings";}i:5;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:28:"ID of forum this topic in in";s:11:"phpdoc_name";s:8:"forum_id";}i:6;a:5:{s:4:"name";s:10:"topic_info";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:43:"The topic row (null: not running Conversr).";s:11:"phpdoc_name";s:10:"topic_info";}i:7;a:7:{s:4:"name";s:5:"depth";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:"The recursion depth";s:11:"phpdoc_name";s:5:"depth";}}s:4:"name";s:17:"_render_post_tree";s:11:"description";s:13:"Render posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:23:"Rendered tree structure";}}s:30:"set_level_has_adjacent_sibling";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"An array of posts";s:11:"phpdoc_name";s:5:"posts";}i:1;a:7:{s:4:"name";s:26:"level_has_adjacent_sibling";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:"For internal use only (null: none)";s:11:"phpdoc_name";s:26:"level_has_adjacent_sibling";}}s:4:"name";s:30:"set_level_has_adjacent_sibling";s:11:"description";s:196:"Sets a level_has_adjacent_sibling property on posts, which is a single-dimensional arraywith a boolean value for every parent post and the post itself containing whether it has an adjacent sibling";s:5:"flags";a:0:{}}s:20:"render_post_map_item";a:6:{s:8:"filename";s:18:"sources/topics.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:5:"array";s:11:"description";s:6:"A post";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:20:"render_post_map_item";s:11:"description";s:47:"Renders the post map items to a tempcode object";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:0:"";}}s:14:"inject_rss_url";a:5:{s:8:"filename";s:18:"sources/topics.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:7:"ID_TEXT";s:11:"description";s:27:"The forum we are working in";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The content type the comments are for";s:11:"phpdoc_name";s:4:"type";}i:2;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 content ID the comments are for";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"inject_rss_url";s:11:"description";s:39:"Put comments RSS link into environment.";s:5:"flags";a:0:{}}s:15:"inject_metadata";a:5:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"inject_metadata";s:11:"description";s:33:"Put posts count into environment.";s:5:"flags";a:0:{}}s:16:"get_posting_form";a:6:{s:8:"filename";s:18:"sources/topics.php";s:10:"parameters";a:5:{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:49:"The content type of what this posting will be for";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:47:"The content ID of what this posting will be for";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:13:"allow_reviews";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether to accept reviews";s:11:"phpdoc_name";s:13:"allow_reviews";}i:3;a:5:{s:4:"name";s:8:"post_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"URL where form submit will go";s:11:"phpdoc_name";s:8:"post_url";}i:4;a:5:{s:4:"name";s:12:"post_warning";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:57:"The default post to use (null: standard courtesy warning)";s:11:"phpdoc_name";s:12:"post_warning";}}s:4:"name";s:16:"get_posting_form";s:11:"description";s:23:"Get a form for posting.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"Posting form";}}}s:4:"name";s:9:"CMS_Topic";s:7:"comment";b:1;}s:21:"CMS_simple_xml_reader";a:3:{s:9:"functions";a:5:{s:11:"__construct";a:5:{s:8:"filename";s:15:"sources/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"xml_data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The XML data";s:11:"phpdoc_name";s:8:"xml_data";}}s:4:"name";s:11:"__construct";s:11:"description";s:95:"Constructs the XML reader: parses the given data. Check $gleamed and $error after constructing.";s:5:"flags";a:0:{}}s:12:"startElement";a:5:{s:8:"filename";s:15:"sources/xml.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:4:"name";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:4:"name";}i:2;a:5:{s:4:"name";s:10:"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:10:"attributes";}}s:4:"name";s:12:"startElement";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:10:"endElement";a:5:{s:8:"filename";s:15:"sources/xml.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:9:"startText";a:5:{s:8:"filename";s:15:"sources/xml.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:13:"pull_together";a:6:{s:8:"filename";s:15:"sources/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"children";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Level of XML tree";s:11:"phpdoc_name";s:8:"children";}}s:4:"name";s:13:"pull_together";s:11:"description";s:62:"Pull a portion of an XML tree structure back into textual XML.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The combined XML";}}}s:4:"name";s:21:"CMS_simple_xml_reader";s:7:"comment";b:1;}s:8:"__global";a:1:{s:9:"functions";a:3272:{s:23:"code_editor_escape_html";a:6:{s:8:"filename";s:15:"code_editor.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:9:"LONG_TEXT";s:11:"description";s:19:"The text to escape.";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:23:"code_editor_escape_html";s:11:"description";s:92:"Escape HTML text. Heavily optimised! Ended up with preg_replace after trying lots of things.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:19:"The escaped result.";}}s:21:"code_editor_do_header";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:2:{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:29:"The type our form clicks are.";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:6:"target";s:7:"default";s:4:"_top";s:11:"default_raw";s:6:"'_top'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:39:"The target our form clicks get sent to.";s:11:"phpdoc_name";s:6:"target";}}s:4:"name";s:21:"code_editor_do_header";s:11:"description";s:36:"Output the code editors page header.";s:5:"flags";a:0:{}}s:21:"code_editor_do_footer";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"code_editor_do_footer";s:11:"description";s:36:"Output the code editors page footer.";s:5:"flags";a:0:{}}s:20:"code_editor_do_login";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"code_editor_do_login";s:11:"description";s:20:"Output a login page.";s:5:"flags";a:0:{}}s:9:"ce_do_dir";a:6:{s:8:"filename";s:15:"code_editor.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:10:"SHORT_TEXT";s:11:"description";s:29:"The directory path to search.";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:9:"ce_do_dir";s:11:"description";s:86:"Search inside a directory for editable files, while favouring the overridden versions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A list of the HTML elements for the list box selection.";}}s:11:"do_get_path";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"given_password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:55:"The password previously given to authorise our editing.";s:11:"phpdoc_name";s:14:"given_password";}}s:4:"name";s:11:"do_get_path";s:11:"description";s:31:"Output the file selection page.";s:5:"flags";a:0:{}}s:18:"ce_fix_permissions";a:5:{s:8:"filename";s:15:"code_editor.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:39:"The full pathname to the file/directory";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:5:"perms";s:7:"default";i:438;s:11:"default_raw";s:4:"0666";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:156:"The permissions to make (not the permissions are reduced if the function finds that the file is owned by the web user [doesn't need world permissions then])";s:11:"phpdoc_name";s:5:"perms";}}s:4:"name";s:18:"ce_fix_permissions";s:11:"description";s:252:"Ensure that the specified file/folder is writeable for the FTP user (so that it can be deleted by the system), and should be called whenever a file is uploaded/created, or a folder is made. We call this function assuming we are giving world permissions";s:5:"flags";a:0:{}}s:22:"open_up_ftp_connection";a:6:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"open_up_ftp_connection";s:11:"description";s:46:"Open up an FTP connection from POSTed details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:61:"Either an error screen or a connection. (null: not using FTP)";}}s:7:"do_page";a:5:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"given_password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:55:"The password previously given to authorise our editing.";s:11:"phpdoc_name";s:14:"given_password";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The path of the file we are editing.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:7:"do_page";s:11:"description";s:43:"Output the editing page and do the editing.";s:5:"flags";a:0:{}}s:20:"convert_to_save_path";a:6:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"save_path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The normal path";s:11:"phpdoc_name";s:9:"save_path";}}s:4:"name";s:20:"convert_to_save_path";s:11:"description";s:48:"Convert a normal path to an overriden save path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"The overridden save path";}}s:12:"ce_sync_file";a:5:{s:8:"filename";s:15:"code_editor.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:61:"File/directory name to sync on (may be full or relative path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:12:"ce_sync_file";s:11:"description";s:66:"Provides a hook for file synchronisation between mirrored servers.";s:5:"flags";a:0:{}}s:17:"ce_sync_file_move";a:5:{s:8:"filename";s:15:"code_editor.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:4:"PATH";s:11:"description";s:63:"File/directory name to move from (may be full or relative path)";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:4:"PATH";s:11:"description";s:61:"File/directory name to move to (may be full or relative path)";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:17:"ce_sync_file_move";s:11:"description";s:66:"Provides a hook for file synchronisation between mirrored servers.";s:5:"flags";a:0:{}}s:24:"ce_check_master_password";a:6:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:24:"ce_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:14:"ce_cms_tempnam";a:6:{s:8:"filename";s:15:"code_editor.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"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:38:"The prefix of the temporary file name.";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:14:"ce_cms_tempnam";s:11:"description";s:229:"Create file with unique file name, but works around compatibility issues between servers. Note that the file is NOT automatically deleted. You should also delete it using "@unlink", as some servers have problems with permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:46:"The name of the temporary file (false: error).";}}s:12:"ce_do_header";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"ce_do_header";s:11:"description";s:38:"Output the config editors page header.";s:5:"flags";a:0:{}}s:12:"ce_do_footer";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"ce_do_footer";s:11:"description";s:38:"Output the config editors page footer.";s:5:"flags";a:0:{}}s:11:"ce_do_login";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"ce_do_login";s:11:"description";s:20:"Output a login page.";s:5:"flags";a:0:{}}s:9:"do_access";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"given_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"The password given to get here (so we don't need to re-enter it each edit).";s:11:"phpdoc_name";s:14:"given_password";}}s:4:"name";s:9:"do_access";s:11:"description";s:24:"Output the editing page.";s:5:"flags";a:0:{}}s:6:"do_set";a:5:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"do_set";s:11:"description";s:15:"Do the editing.";s:5:"flags";a:0:{}}s:12:"co_sync_file";a:5:{s:8:"filename";s:17:"config_editor.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:61:"File/directory name to sync on (may be full or relative path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:12:"co_sync_file";s:11:"description";s:66:"Provides a hook for file synchronisation between mirrored servers.";s:5:"flags";a:0:{}}s:17:"co_sync_file_move";a:5:{s:8:"filename";s:17:"config_editor.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:4:"PATH";s:11:"description";s:63:"File/directory name to move from (may be full or relative path)";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:4:"PATH";s:11:"description";s:61:"File/directory name to move to (may be full or relative path)";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:17:"co_sync_file_move";s:11:"description";s:66:"Provides a hook for file synchronisation between mirrored servers.";s:5:"flags";a:0:{}}s:24:"co_check_master_password";a:6:{s:8:"filename";s:17:"config_editor.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:24:"co_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:30:"handle_failover_auto_switching";a:5:{s:8:"filename";s:24:"data/failover_script.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"iteration";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:93:"The check iteration (if deactivating we check a number of times to ensure all is still okay).";s:11:"phpdoc_name";s:9:"iteration";}}s:4:"name";s:30:"handle_failover_auto_switching";s:11:"description";s:83:"Switch over the failover mode appropriately if we detect a change in problem state.";s:5:"flags";a:0:{}}s:10:"is_failing";a:5:{s:8:"filename";s:24:"data/failover_script.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Check that failed.";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:10:"is_failing";s:11:"description";s:57:"A check has failed, inform contact(s) about it then exit.";s:5:"flags";a:0:{}}s:19:"send_failover_email";a:5:{s:8:"filename";s:24:"data/failover_script.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Subject.";s:11:"phpdoc_name";s:7:"subject";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Body.";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:19:"send_failover_email";s:11:"description";s:22:"Send a failover email.";s:5:"flags";a:0:{}}s:17:"set_failover_mode";a:5:{s:8:"filename";s:24:"data/failover_script.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"new_mode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"New failover mode.";s:11:"phpdoc_name";s:8:"new_mode";}}s:4:"name";s:17:"set_failover_mode";s:11:"description";s:33:"Set failover mode to a new value.";s:5:"flags";a:0:{}}s:13:"qr_get_domain";a:6:{s:8:"filename";s:22:"data/quash_referer.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"qr_get_domain";s:11:"description";s:28:"Find the active domain name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"Active domain name";}}s:13:"up2_do_header";a:5:{s:8:"filename";s:18:"data/upgrader2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:11:"refresh_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:31:"URL to go to next (blank: done)";s:11:"phpdoc_name";s:11:"refresh_url";}}s:4:"name";s:13:"up2_do_header";s:11:"description";s:32:"Output the upgrader page header.";s:5:"flags";a:0:{}}s:13:"up2_do_footer";a:5:{s:8:"filename";s:18:"data/upgrader2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"up2_do_footer";s:11:"description";s:32:"Output the upgrader page footer.";s:5:"flags";a:0:{}}s:31:"upgrader2_check_master_password";a:6:{s:8:"filename";s:18:"data/upgrader2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:21:"password_given_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:21:"password_given_hashed";}}s:4:"name";s:31:"upgrader2_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:9:"tick_func";a:5:{s:8:"filename";s:9:"index.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"tick_func";s:11:"description";s:22:"Profile tick function.";s:5:"flags";a:0:{}}s:9:"rd_do_dir";a:6:{s:8:"filename";s:21:"rootkit_detection.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:10:"SHORT_TEXT";s:11:"description";s:29:"The directory path to search.";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:9:"rd_do_dir";s:11:"description";s:36:"Search inside a directory for files.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:36:"The HTML for the list box selection.";}}s:12:"rd_do_header";a:5:{s:8:"filename";s:21:"rootkit_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"rd_do_header";s:11:"description";s:38:"Output the config editors page header.";s:5:"flags";a:0:{}}s:12:"rd_do_footer";a:5:{s:8:"filename";s:21:"rootkit_detection.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"rd_do_footer";s:11:"description";s:38:"Output the config editors page footer.";s:5:"flags";a:0:{}}s:24:"rk_check_master_password";a:6:{s:8:"filename";s:21:"rootkit_detection.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:24:"rk_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:27:"init__abstract_file_manager";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"init__abstract_file_manager";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"force_have_afm_details";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"force_have_afm_details";s:11:"description";s:91:"Make sure that the AFM connection details have been posted. If not, get them and loop back.";s:5:"flags";a:0:{}}s:12:"get_afm_form";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_afm_form";s:11:"description";s:19:"Force an AFM login.";s:5:"flags";a:0:{}}s:19:"get_afm_form_fields";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_afm_form_fields";s:11:"description";s:77:"Get the fields that need to be filled in to know how to do an AFM connection.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The form fields.";}}s:9:"_ftp_info";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"light_fail";s:7:"default";s:13:"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 simply echo-out errors.";s:11:"phpdoc_name";s:10:"light_fail";}}s:4:"name";s:9:"_ftp_info";s:11:"description";s:54:"Return the FTP connection, from stored/posted details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"~resource";s:11:"description";s:51:"The FTP connection (false: not connecting via FTP).";}}s:21:"_translate_dir_access";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether world directory access is required.";s:11:"phpdoc_name";s:12:"world_access";}}s:4:"name";s:21:"_translate_dir_access";s:11:"description";s:88:"Translate truth about needing world write access to a directory to absolute permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:24:"The absolute permission.";}}s:22:"_translate_file_access";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether world file access is required.";s:11:"phpdoc_name";s:12:"world_access";}i:1;a:7:{s:4:"name";s:9:"file_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:34:"The file type (blank: don't care).";s:11:"phpdoc_name";s:9:"file_type";}}s:4:"name";s:22:"_translate_file_access";s:11:"description";s:83:"Translate truth about needing world write access to a file to absolute permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:24:"The absolute permission.";}}s:14:"_access_string";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"access_int";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The integer permission.";s:11:"phpdoc_name";s:10:"access_int";}}s:4:"name";s:14:"_access_string";s:11:"description";s:52:"Convert an integer permission to the string version.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The string version.";}}s:13:"_rescope_path";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.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:14:"Original path.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"_rescope_path";s:11:"description";s:65:"Rescope a Composr path to a path suitable for the AFM connection.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:14:"Rescoped path.";}}s:13:"afm_set_perms";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:61:"The path of the file/directory we are setting permissions of.";s:11:"phpdoc_name";s:10:"basic_path";}i:1;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether world access is required.";s:11:"phpdoc_name";s:12:"world_access";}}s:4:"name";s:13:"afm_set_perms";s:11:"description";s:46:"Sets permissions over the open AFM connection.";s:5:"flags";a:0:{}}s:18:"afm_make_directory";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:47:"The path to and of the directory we are making.";s:11:"phpdoc_name";s:10:"basic_path";}i:1;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether world access is required.";s:11:"phpdoc_name";s:12:"world_access";}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:125:"Whether we should recursively make any directories that are missing in the given path, until we can make the final directory.";s:11:"phpdoc_name";s:9:"recursive";}}s:4:"name";s:18:"afm_make_directory";s:11:"description";s:46:"Make a directory over the open AFM connection.";s:5:"flags";a:0:{}}s:13:"_get_dir_tree";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:34:"The base directory for the search.";s:11:"phpdoc_name";s:4:"base";}i:1;a:7:{s:4:"name";s:2:"at";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:43:"The directory where we are searching under.";s:11:"phpdoc_name";s:2:"at";}}s:4:"name";s:13:"_get_dir_tree";s:11:"description";s:38:"Get a list of files under a directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"An array of directories found under this recursive level.";}}s:20:"afm_delete_directory";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:49:"The path to and of the directory we are deleting.";s:11:"phpdoc_name";s:10:"basic_path";}i:1;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:69:"Whether we should recursively delete any child files and directories.";s:11:"phpdoc_name";s:9:"recursive";}}s:4:"name";s:20:"afm_delete_directory";s:11:"description";s:48:"Delete a directory over the open AFM connection.";s:5:"flags";a:0:{}}s:13:"afm_make_file";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:35:"The path to the file we are making.";s:11:"phpdoc_name";s:10:"basic_path";}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:26:"The desired file contents.";s:11:"phpdoc_name";s:8:"contents";}i:2;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether world access is required.";s:11:"phpdoc_name";s:12:"world_access";}}s:4:"name";s:13:"afm_make_file";s:11:"description";s:101:"Make a new file over the open AFM connection. Will overwrite if already exists (assuming has access).";s:5:"flags";a:0:{}}s:13:"afm_read_file";a:6:{s:8:"filename";s:33:"sources/abstract_file_manager.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:36:"The path to the file we are reading.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:13:"afm_read_file";s:11:"description";s:98:"Read a file (not actually over the open AFM connection, but same result: we can do this directly).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:25:"The contents of the file.";}}s:8:"afm_copy";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"old_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:36:"The path to the file we are copying.";s:11:"phpdoc_name";s:8:"old_path";}i:1;a:5:{s:4:"name";s:8:"new_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:16:"The target path.";s:11:"phpdoc_name";s:8:"new_path";}i:2;a:5:{s:4:"name";s:12:"world_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether world access is required for the copy.";s:11:"phpdoc_name";s:12:"world_access";}}s:4:"name";s:8:"afm_copy";s:11:"description";s:59:"Copies a file (NOT a directory) on the open AFM connection.";s:5:"flags";a:0:{}}s:8:"afm_move";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"basic_old_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The path to the file we are moving from.";s:11:"phpdoc_name";s:14:"basic_old_path";}i:1;a:5:{s:4:"name";s:14:"basic_new_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:16:"The target path.";s:11:"phpdoc_name";s:14:"basic_new_path";}}s:4:"name";s:8:"afm_move";s:11:"description";s:40:"Moves a file on the open AFM connection.";s:5:"flags";a:0:{}}s:15:"afm_delete_file";a:5:{s:8:"filename";s:33:"sources/abstract_file_manager.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"basic_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:37:"The path to the file we are deleting.";s:11:"phpdoc_name";s:10:"basic_path";}}s:4:"name";s:15:"afm_delete_file";s:11:"description";s:60:"Deletes a file (NOT a directory) on the open AFM connection.";s:5:"flags";a:0:{}}s:17:"actionlog_linkage";a:6:{s:8:"filename";s:21:"sources/actionlog.php";s:10:"parameters";a:5:{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:11:"Action type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:1:"a";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"First parameter";s:11:"phpdoc_name";s:1:"a";}i:2;a:5:{s:4:"name";s:1:"b";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Second parameter";s:11:"phpdoc_name";s:1:"b";}i:3;a:5:{s:4:"name";s:2:"_a";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:25:"First parameter (cropped)";s:11:"phpdoc_name";s:2:"_a";}i:4;a:5:{s:4:"name";s:2:"_b";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"Second parameter (cropped)";s:11:"phpdoc_name";s:2:"_b";}}s:4:"name";s:17:"actionlog_linkage";s:11:"description";s:52:"Try and make an action log entry into a proper link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:113:"Pair: first parameter as possible link, second parameter as possible link (null: could not construct a nice link)";}}s:28:"syndicate_described_activity";a:5:{s:8:"filename";s:22:"sources/activities.php";s:10:"parameters";a:12:{i:0;a:7:{s:4:"name";s:22:"a_language_string_code";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:18:"Language string ID";s:11:"phpdoc_name";s:22:"a_language_string_code";}i:1;a:7:{s:4:"name";s:9:"a_label_1";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:56:"Label 1 (given as a parameter to the language string ID)";s:11:"phpdoc_name";s:9:"a_label_1";}i:2;a:7:{s:4:"name";s:9:"a_label_2";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:56:"Label 2 (given as a parameter to the language string ID)";s:11:"phpdoc_name";s:9:"a_label_2";}i:3;a:7:{s:4:"name";s:9:"a_label_3";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:56:"Label 3 (given as a parameter to the language string ID)";s:11:"phpdoc_name";s:9:"a_label_3";}i:4;a:7:{s:4:"name";s:13:"a_page_link_1";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:"Page-link 1";s:11:"phpdoc_name";s:13:"a_page_link_1";}i:5;a:7:{s:4:"name";s:13:"a_page_link_2";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:"Page-link 2";s:11:"phpdoc_name";s:13:"a_page_link_2";}i:6;a:7:{s:4:"name";s:13:"a_page_link_3";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:"Page-link 3";s:11:"phpdoc_name";s:13:"a_page_link_3";}i:7;a:7:{s:4:"name";s:7:"a_addon";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:"Addon that caused the event";s:11:"phpdoc_name";s:7:"a_addon";}i:8;a:7:{s:4:"name";s:11:"a_is_public";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 this post should be public or friends-only";s:11:"phpdoc_name";s:11:"a_is_public";}i:9;a:7:{s:4:"name";s:11:"a_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:47:"Member being written for (null: current member)";s:11:"phpdoc_name";s:11:"a_member_id";}i:10;a:7:{s:4:"name";s:12:"sitewide_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:58:"Whether to push this out as a site event if user requested";s:11:"phpdoc_name";s:12:"sitewide_too";}i:11;a:7:{s:4:"name";s:16:"a_also_involving";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:91:"Member also 'intimately' involved, such as a content submitter who is a friend (null: none)";s:11:"phpdoc_name";s:16:"a_also_involving";}}s:4:"name";s:28:"syndicate_described_activity";s:11:"description";s:107:"Syndicate human-intended descriptions of activities performed to the internal wall, and external listeners.";s:5:"flags";a:0:{}}s:34:"has_external_site_wide_syndication";a:6:{s:8:"filename";s:22:"sources/activities.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"has_external_site_wide_syndication";s:11:"description";s:72:"Detect whether we have external site-wide syndication support somewhere.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether we do";}}s:29:"get_syndication_option_fields";a:6:{s:8:"filename";s:22:"sources/activities.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The content type this is for";s:11:"phpdoc_name";s:12:"content_type";}}s:4:"name";s:29:"get_syndication_option_fields";s:11:"description";s:25:"Get syndication field UI.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"Syndication fields (or empty)";}}s:25:"get_default_addon_details";a:6:{s:8:"filename";s:18:"sources/addons.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_default_addon_details";s:11:"description";s:26:"Find detail addon details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"Map of default addon details";}}s:15:"read_addon_info";a:6:{s:8:"filename";s:18:"sources/addons.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The name of the addon";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:24:"get_dependencies_on_this";s:7:"default";s:13:"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 search for dependencies on this";s:11:"phpdoc_name";s:24:"get_dependencies_on_this";}i:2;a:7:{s:4:"name";s:3:"row";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:"Database row (null: lookup via a new query)";s:11:"phpdoc_name";s:3:"row";}i:3;a:7:{s:4:"name";s:8:"ini_info";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:".ini-format info (needs processing) (null: unknown / N/A)";s:11:"phpdoc_name";s:8:"ini_info";}i:4;a:7:{s:4:"name";s:4:"path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:52:"Force reading from a particular path (null: no path)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:15:"read_addon_info";s:11:"description";s:102:"Get info about an addon, simulating an extended version of the traditional Composr-addon database row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The map of details";}}s:15:"find_addon_icon";a:6:{s:8:"filename";s:18:"sources/addons.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"addon_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Addon name";s:11:"phpdoc_name";s:10:"addon_name";}i:1;a:7:{s:4:"name";s:12:"pick_default";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to use a default icon if not found";s:11:"phpdoc_name";s:12:"pick_default";}i:2;a:7:{s:4:"name";s:8:"tar_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:73:"Path to TAR file (null: don't look inside a TAR / it's installed already)";s:11:"phpdoc_name";s:8:"tar_path";}}s:4:"name";s:15:"find_addon_icon";s:11:"description";s:27:"Find the icon for an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:85:"Theme image URL (may be a "data:" URL rather than a normal URLPATH) (null: not found)";}}s:13:"init__addons2";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__addons2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"upgrade_addon_soft";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The addon name";s:11:"phpdoc_name";s:5:"addon";}}s:4:"name";s:18:"upgrade_addon_soft";s:11:"description";s:28:"Upgrade the specified addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:41:"0=No upgrade. -2=Not installed, 1=Upgrade";}}s:20:"reinstall_addon_soft";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The addon name";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:8:"ini_info";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:".ini-format info (needs processing) (null: unknown / N/A)";s:11:"phpdoc_name";s:8:"ini_info";}}s:4:"name";s:20:"reinstall_addon_soft";s:11:"description";s:30:"Reinstall the specified addon.";s:5:"flags";a:0:{}}s:20:"uninstall_addon_soft";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The addon name";s:11:"phpdoc_name";s:5:"addon";}}s:4:"name";s:20:"uninstall_addon_soft";s:11:"description";s:30:"Uninstall the specified addon.";s:5:"flags";a:0:{}}s:18:"find_remote_addons";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"find_remote_addons";s:11:"description";s:50:"Find the non-bundled addons available on compo.sr.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"Map of addon ID to addon title";}}s:19:"find_updated_addons";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"find_updated_addons";s:11:"description";s:58:"Find updated addons via checking the compo.sr web service.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"List of addons updated";}}s:21:"find_installed_addons";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:16:"just_non_bundled";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to only return details on on-bundled addons";s:11:"phpdoc_name";s:16:"just_non_bundled";}i:1;a:7:{s:4:"name";s:8:"get_info";s:7:"default";s:12:"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 to get full details about each addon";s:11:"phpdoc_name";s:8:"get_info";}}s:4:"name";s:21:"find_installed_addons";s:11:"description";s:30:"Find all the installed addons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:67:"Map of maps describing the available addons (addon name => details)";}}s:26:"find_addon_effective_mtime";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"addon_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The name of the addon";s:11:"phpdoc_name";s:10:"addon_name";}}s:4:"name";s:26:"find_addon_effective_mtime";s:11:"description";s:45:"Find effective modification date of an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:50:"Modification time (null: could not find any files)";}}s:21:"find_available_addons";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:13:"installed_too";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to include addons that are installed already";s:11:"phpdoc_name";s:13:"installed_too";}}s:4:"name";s:21:"find_available_addons";s:11:"description";s:92:"Find all the available addons (addons in imports/addons that are not necessarily installed).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"Maps of maps describing the available addons (filename => details)";}}s:26:"find_addon_dependencies_on";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The name of the addon";s:11:"phpdoc_name";s:5:"addon";}}s:4:"name";s:26:"find_addon_dependencies_on";s:11:"description";s:24:"Find addon dependencies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"List of dependencies";}}s:12:"create_addon";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:15:{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:67:"Filename to create in exports/addons directory (should end in .tar)";s:11:"phpdoc_name";s:4:"file";}i:1;a:5:{s:4:"name";s:5:"files";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"List of files to include";s:11:"phpdoc_name";s:5:"files";}i:2;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Addon name";s:11:"phpdoc_name";s:5:"addon";}i:3;a:5:{s:4:"name";s:17:"incompatibilities";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:41:"Addon incompatibilities (comma-separated)";s:11:"phpdoc_name";s:17:"incompatibilities";}i:4;a:5:{s:4:"name";s:12:"dependencies";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"Addon dependencies (comma-separated)";s:11:"phpdoc_name";s:12:"dependencies";}i:5;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Addon author";s:11:"phpdoc_name";s:6:"author";}i:6;a:5:{s:4:"name";s:12:"organisation";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Addon organisation";s:11:"phpdoc_name";s:12:"organisation";}i:7;a:5:{s:4:"name";s:7:"version";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Addon version";s:11:"phpdoc_name";s:7:"version";}i:8;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Addon category";s:11:"phpdoc_name";s:8:"category";}i:9;a:5:{s:4:"name";s:21:"copyright_attribution";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"Addon copyright attribution";s:11:"phpdoc_name";s:21:"copyright_attribution";}i:10;a:5:{s:4:"name";s:7:"licence";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Addon licence";s:11:"phpdoc_name";s:7:"licence";}i:11;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Addon description";s:11:"phpdoc_name";s:11:"description";}i:12;a:7:{s:4:"name";s:3:"dir";s:7:"default";s:14:"exports/addons";s:11:"default_raw";s:16:"'exports/addons'";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:20:"Directory to save to";s:11:"phpdoc_name";s:3:"dir";}i:13;a:7:{s:4:"name";s:6:"mtimes";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:40:"A map of file mtimes to use (null: none)";s:11:"phpdoc_name";s:6:"mtimes";}i:14;a:7:{s:4:"name";s:9:"file_base";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:74:"Alternate file base to get addon files from (null: main website file base)";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:12:"create_addon";s:11:"description";s:24:"Create an addon to spec.";s:5:"flags";a:0:{}}s:13:"install_addon";a:5:{s:8:"filename";s:19:"sources/addons2.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:26:"Name of the addon TAR file";s:11:"phpdoc_name";s:4:"file";}i:1;a:7:{s:4:"name";s:5:"files";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:"The files to install (null: all)";s:11:"phpdoc_name";s:5:"files";}i:2;a:7:{s:4:"name";s:8:"do_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:12:"Do file part";s:11:"phpdoc_name";s:8:"do_files";}i:3;a:7:{s:4:"name";s:5:"do_db";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:10:"Do DB part";s:11:"phpdoc_name";s:5:"do_db";}}s:4:"name";s:13:"install_addon";s:11:"description";s:17:"Install an addon.";s:5:"flags";a:0:{}}s:15:"uninstall_addon";a:5:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Name of the addon";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:12:"clear_caches";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether to clear caches";s:11:"phpdoc_name";s:12:"clear_caches";}}s:4:"name";s:15:"uninstall_addon";s:11:"description";s:57:"Completely uninstall the specified addon from the system.";s:5:"flags";a:0:{}}s:26:"inform_about_addon_install";a:6:{s:8:"filename";s:19:"sources/addons2.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:30:"Filename of the addon TAR file";s:11:"phpdoc_name";s:4:"file";}i:1;a:7:{s:4:"name";s:17:"also_uninstalling";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:106:"List of addons that we're currently uninstalling (so dependencies from these are irrelevant). (null: none)";s:11:"phpdoc_name";s:17:"also_uninstalling";}i:2;a:7:{s:4:"name";s:15:"also_installing";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:102:"List of addons that we're currently installing (so dependencies to these are irrelevant). (null: none)";s:11:"phpdoc_name";s:15:"also_installing";}i:3;a:7:{s:4:"name";s:13:"always_return";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:103:"Whether to make sure we always return, rather than possibly bombing out with a dependency management UI";s:11:"phpdoc_name";s:13:"always_return";}}s:4:"name";s:26:"inform_about_addon_install";s:11:"description";s:85:"Get information for the user relating to an addon that they are intending to install.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:41:"Triple: warnings, files, addon info array";}}s:11:"has_feature";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"dependency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Feature name";s:11:"phpdoc_name";s:10:"dependency";}}s:4:"name";s:11:"has_feature";s:11:"description";s:79:"Find whether a particular feature is available to Composr (e.g. it's an addon).";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:28:"inform_about_addon_uninstall";a:6:{s:8:"filename";s:19:"sources/addons2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Name of the addon";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:17:"also_uninstalling";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:106:"List of addons that we're currently uninstalling (so dependencies from these are irrelevant). (null: none)";s:11:"phpdoc_name";s:17:"also_uninstalling";}i:2;a:7:{s:4:"name";s:10:"addon_info";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:39:"Addon details. (null: load in function)";s:11:"phpdoc_name";s:10:"addon_info";}i:3;a:7:{s:4:"name";s:13:"always_return";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:103:"Whether to make sure we always return, rather than possibly bombing out with a dependency management UI";s:11:"phpdoc_name";s:13:"always_return";}}s:4:"name";s:28:"inform_about_addon_uninstall";s:11:"description";s:87:"Get information for the user relating to an addon that they are intending to uninstall.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"Pair: warnings, files";}}s:27:"add_aggregate_type_instance";a:6:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:15:"aggregate_label";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"Label for new instance";s:11:"phpdoc_name";s:15:"aggregate_label";}i:1;a:5:{s:4:"name";s:14:"aggregate_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"What the instance is of";s:11:"phpdoc_name";s:14:"aggregate_type";}i:2;a:5:{s:4:"name";s:17:"_other_parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Additional parameters";s:11:"phpdoc_name";s:17:"_other_parameters";}i:3;a:7:{s:4:"name";s:8:"add_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:20:"Add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:4;a:7:{s:4:"name";s:9:"edit_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:32:"Edit time (null: not edited yet)";s:11:"phpdoc_name";s:9:"edit_time";}i:5;a:7:{s:4:"name";s:4:"sync";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether to activate it";s:11:"phpdoc_name";s:4:"sync";}i:6;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:27:"add_aggregate_type_instance";s:11:"description";s:31:"Add an aggregate type instance.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:22:"ID of the new instance";}}s:28:"edit_aggregate_type_instance";a:5:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:7:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:15:"aggregate_label";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"Label for instance";s:11:"phpdoc_name";s:15:"aggregate_label";}i:2;a:5:{s:4:"name";s:14:"aggregate_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"What the instance is of";s:11:"phpdoc_name";s:14:"aggregate_type";}i:3;a:5:{s:4:"name";s:17:"_other_parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Additional parameters";s:11:"phpdoc_name";s:17:"_other_parameters";}i:4;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}i:5;a:7:{s:4:"name";s:8:"add_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:29:"Add time (null: don't change)";s:11:"phpdoc_name";s:8:"add_time";}i:6;a:7:{s:4:"name";s:9:"edit_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:21:"Edit time (null: now)";s:11:"phpdoc_name";s:9:"edit_time";}}s:4:"name";s:28:"edit_aggregate_type_instance";s:11:"description";s:32:"Edit an aggregate type instance.";s:5:"flags";a:0:{}}s:30:"delete_aggregate_type_instance";a:5:{s:8:"filename";s:27:"sources/aggregate_types.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:14:"delete_matches";s:7:"default";s:13:"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 delete all associated resources";s:11:"phpdoc_name";s:14:"delete_matches";}}s:4:"name";s:30:"delete_aggregate_type_instance";s:11:"description";s:34:"Delete an aggregate type instance.";s:5:"flags";a:0:{}}s:30:"find_aggregate_type_parameters";a:6:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"aggregate_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"Aggregate type to find parameters for";s:11:"phpdoc_name";s:14:"aggregate_type";}}s:4:"name";s:30:"find_aggregate_type_parameters";s:11:"description";s:58:"Find the parameters an aggregate type needs for instances.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The aggregate type parameters";}}s:19:"_find_parameters_in";a:5:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"src_text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:4:"Text";s:11:"phpdoc_name";s:8:"src_text";}i:1;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:31:"Reference to our parameter list";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:19:"_find_parameters_in";s:11:"description";s:60:"Scan some aggregate type XML text for referenced parameters.";s:5:"flags";a:0:{}}s:19:"parse_aggregate_xml";a:6:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:14:"display_errors";s:7:"default";s:13:"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 errors should be displayed";s:11:"phpdoc_name";s:14:"display_errors";}}s:4:"name";s:19:"parse_aggregate_xml";s:11:"description";s:39:"Load the aggregate XML types structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The aggregate types";}}s:35:"resync_all_aggregate_type_instances";a:5:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:1:{i:0;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:54:"Restrict to this aggregate type (null: no restriction)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:35:"resync_all_aggregate_type_instances";s:11:"description";s:37:"Re-sync all aggregate type instances.";s:5:"flags";a:0:{}}s:28:"sync_aggregate_type_instance";a:5:{s:8:"filename";s:27:"sources/aggregate_types.php";s:10:"parameters";a:6:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:15:"aggregate_label";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:33:"Label for instance (null: lookup)";s:11:"phpdoc_name";s:15:"aggregate_label";}i:2;a:7:{s:4:"name";s:19:"old_aggregate_label";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:37:"Old label for instance (null: lookup)";s:11:"phpdoc_name";s:19:"old_aggregate_label";}i:3;a:7:{s:4:"name";s:14:"aggregate_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:38:"What the instance is of (null: lookup)";s:11:"phpdoc_name";s:14:"aggregate_type";}i:4;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:36:"Additional parameters (null: lookup)";s:11:"phpdoc_name";s:16:"other_parameters";}i:5;a:7:{s:4:"name";s:14:"old_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:40:"Old additional parameters (null: lookup)";s:11:"phpdoc_name";s:14:"old_parameters";}}s:4:"name";s:28:"sync_aggregate_type_instance";s:11:"description";s:32:"Sync an aggregate type instance.";s:5:"flags";a:0:{}}s:11:"cor_prepare";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"cor_prepare";s:11:"description";s:30:"Prepare to inject COR headers.";s:5:"flags";a:0:{}}s:18:"crossdomain_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"crossdomain_script";s:11:"description";s:44:"Script to generate a Flash crossdomain file.";s:5:"flags";a:0:{}}s:21:"username_check_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"username_check_script";s:11:"description";s:52:"AJAX script for checking if a new username is valid.";s:5:"flags";a:0:{}}s:22:"username_exists_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"username_exists_script";s:11:"description";s:46:"AJAX script for checking if a username exists.";s:5:"flags";a:0:{}}s:15:"namelike_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"namelike_script";s:11:"description";s:62:"AJAX script for allowing username/author/search-terms home-in.";s:5:"flags";a:0:{}}s:23:"find_permissions_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"find_permissions_script";s:11:"description";s:64:"AJAX script for finding out privileges for the queried resource.";s:5:"flags";a:0:{}}s:14:"store_autosave";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"store_autosave";s:11:"description";s:33:"AJAX script to store an autosave.";s:5:"flags";a:0:{}}s:17:"retrieve_autosave";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"retrieve_autosave";s:11:"description";s:36:"AJAX script to retrieve an autosave.";s:5:"flags";a:0:{}}s:22:"fractional_edit_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"fractional_edit_script";s:11:"description";s:51:"AJAX script to make a fractional edit to some data.";s:5:"flags";a:0:{}}s:23:"change_detection_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"change_detection_script";s:11:"description";s:45:"AJAX script to tell if data has been changed.";s:5:"flags";a:0:{}}s:16:"edit_ping_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"edit_ping_script";s:11:"description";s:67:"AJAX script for recording that something is currently being edited.";s:5:"flags";a:0:{}}s:16:"ajax_tree_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"ajax_tree_script";s:11:"description";s:52:"AJAX script for dynamically extended selection tree.";s:5:"flags";a:0:{}}s:22:"confirm_session_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"confirm_session_script";s:11:"description";s:47:"AJAX script for confirming a session is active.";s:5:"flags";a:0:{}}s:20:"load_template_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"load_template_script";s:11:"description";s:75:"AJAX script for getting the text of a template, as used by a certain theme.";s:5:"flags";a:0:{}}s:12:"sheet_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"sheet_script";s:11:"description";s:41:"AJAX script for dynamic inclusion of CSS.";s:5:"flags";a:0:{}}s:13:"script_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"script_script";s:11:"description";s:48:"AJAX script for dynamic inclusion of JavaScript.";s:5:"flags";a:0:{}}s:14:"snippet_script";a:5:{s:8:"filename";s:16:"sources/ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"snippet_script";s:11:"description";s:52:"AJAX script for dynamic inclusion of XHTML snippets.";s:5:"flags";a:0:{}}s:14:"init__antispam";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__antispam";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"inject_action_spamcheck";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:2:{i:0;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:71:"Check this particular username that has just been supplied (null: none)";s:11:"phpdoc_name";s:8:"username";}i:1;a:7:{s:4:"name";s:5:"email";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:76:"Check this particular email address that has just been supplied (null: none)";s:11:"phpdoc_name";s:5:"email";}}s:4:"name";s:23:"inject_action_spamcheck";s:11:"description";s:97:"Should be called when an action happens that results in content submission. Does a spammer check.";s:5:"flags";a:0:{}}s:10:"check_rbls";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:10:"page_level";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether this is a page level check (i.e. we won't consider blocks or approval, just ban setting)";s:11:"phpdoc_name";s:10:"page_level";}i:1;a:7:{s:4:"name";s:7:"user_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:33:"IP address (null: current user's)";s:11:"phpdoc_name";s:7:"user_ip";}}s:4:"name";s:10:"check_rbls";s:11:"description";s:48:"Check RBLs to see if we need to block this user.";s:5:"flags";a:0:{}}s:9:"check_rbl";a:6:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"rbl";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The RBL domain name/IP (HTTP:BL has a special syntax)";s:11:"phpdoc_name";s:3:"rbl";}i:1;a:5:{s:4:"name";s:7:"user_ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:24:"The IP address to lookup";s:11:"phpdoc_name";s:7:"user_ip";}i:2;a:7:{s:4:"name";s:24:"we_have_a_result_already";s:7:"default";s:13:"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:"If true, then no RBL check will happen if the RBL has no scoring, because it can't provide a superior result to what is already known (performance)";s:11:"phpdoc_name";s:24:"we_have_a_result_already";}i:3;a:7:{s:4:"name";s:10:"page_level";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether this is a page level check (i.e. we won't consider blocks or approval, just ban setting)";s:11:"phpdoc_name";s:10:"page_level";}}s:4:"name";s:9:"check_rbl";s:11:"description";s:33:"Do an RBL check on an IP address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:126:"Pair: Listed for potential blocking as a ANTISPAM_RESPONSE_* constant, confidence level if attainable (0.0 to 1.0) (else null)";}}s:11:"rbl_resolve";a:6:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:3:{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:24:"The IP address to lookup";s:11:"phpdoc_name";s:2:"ip";}i:1;a:5:{s:4:"name";s:10:"rbl_domain";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The RBL domain";s:11:"phpdoc_name";s:10:"rbl_domain";}i:2;a:5:{s:4:"name";s:10:"page_level";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether this is a page level check (i.e. we won't consider blocks or approval, just ban setting)";s:11:"phpdoc_name";s:10:"page_level";}}s:4:"name";s:11:"rbl_resolve";s:11:"description";s:44:"Do an RBL lookup (low level, uninterpreted).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:27:"Return result (null: error)";}}s:38:"handle_perceived_spammer_by_confidence";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"user_ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:10:"IP address";s:11:"phpdoc_name";s:7:"user_ip";}i:1;a:5:{s:4:"name";s:16:"confidence_level";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:29:"Confidence level (0.0 to 1.0)";s:11:"phpdoc_name";s:16:"confidence_level";}i:2;a:5:{s:4:"name";s:10:"blocked_by";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"Identifier for whatever did the blocking";s:11:"phpdoc_name";s:10:"blocked_by";}i:3;a:5:{s:4:"name";s:10:"page_level";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether this is a page level check (i.e. we won't consider blocks or approval, just ban setting)";s:11:"phpdoc_name";s:10:"page_level";}}s:4:"name";s:38:"handle_perceived_spammer_by_confidence";s:11:"description";s:30:"Deal with a perceived spammer.";s:5:"flags";a:0:{}}s:19:"check_stopforumspam";a:5:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:2:{i:0;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:71:"Check this particular username that has just been supplied (null: none)";s:11:"phpdoc_name";s:8:"username";}i:1;a:7:{s:4:"name";s:5:"email";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:76:"Check this particular email address that has just been supplied (null: none)";s:11:"phpdoc_name";s:5:"email";}}s:4:"name";s:19:"check_stopforumspam";s:11:"description";s:69:"Check the stopforumspam service to see if we need to block this user.";s:5:"flags";a:0:{}}s:20:"_check_stopforumspam";a:6:{s:8:"filename";s:20:"sources/antispam.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"user_ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Check this IP address";s:11:"phpdoc_name";s:7:"user_ip";}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:71:"Check this particular username that has just been supplied (null: none)";s:11:"phpdoc_name";s:8:"username";}i:2;a:7:{s:4:"name";s:5:"email";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:76:"Check this particular email address that has just been supplied (null: none)";s:11:"phpdoc_name";s:5:"email";}}s:4:"name";s:20:"_check_stopforumspam";s:11:"description";s:106:"Check the stopforumspam service to see if we need to block this user (lower level, doesn't handle result).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:126:"Pair: Listed for potential blocking as a ANTISPAM_RESPONSE_* constant, confidence level if attainable (0.0 to 1.0) (else null)";}}s:17:"render_attachment";a:6:{s:8:"filename";s:23:"sources/attachments.php";s:10:"parameters";a:10:{i:0;a:6:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The attachment tag";s:11:"phpdoc_name";s:3:"tag";s:3:"set";s:26:"attachment attachment_safe";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:47:"A map of the attributes (name=>val) for the tag";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:14:"attachment_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:65:"A map of the attachment properties (name=>val) for the attachment";s:11:"phpdoc_name";s:14:"attachment_row";}i:3;a:5:{s:4:"name";s:7:"pass_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:100:"A special identifier to mark where the resultant Tempcode is going to end up (e.g. the ID of a post)";s:11:"phpdoc_name";s:7:"pass_id";}i:4;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:6;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:7;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:8;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}i:9;a:7:{s:4:"name";s:14:"semiparse_mode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:199:"Whether to parse so as to create something that would fit inside a semihtml tag. It means we generate HTML, with Comcode written into it where the tag could never be reverse-converted (e.g. a block).";s:11:"phpdoc_name";s:14:"semiparse_mode";}}s:4:"name";s:17:"render_attachment";s:11:"description";s:49:"Get Tempcode for a Comcode rich-media attachment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:31:"The Tempcode for the attachment";}}s:21:"has_attachment_access";a:6:{s:8:"filename";s:23:"sources/attachments.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}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:44:"The ID code for the attachment being checked";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:10:"connection";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:46:"The database connection to use (null: site DB)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:21:"has_attachment_access";s:11:"description";s:73:"Find if the specified member has access to view the specified attachment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the member has attachment access";}}s:18:"attachments_script";a:5:{s:8:"filename";s:23:"sources/attachments.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"attachments_script";s:11:"description";s:42:"Show the image of an attachment/thumbnail.";s:5:"flags";a:0:{}}s:23:"attachment_popup_script";a:5:{s:8:"filename";s:23:"sources/attachments.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"attachment_popup_script";s:11:"description";s:75:"Shows an HTML page of all attachments we can access with selection buttons.";s:5:"flags";a:0:{}}s:22:"do_comcode_attachments";a:6:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:52:"The unparsed Comcode that references the attachments";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"The type the attachment will be used for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The ID the attachment will be used for";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:15:"previewing_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:71:"Whether we are only previewing the attachments (i.e. don't store them!)";s:11:"phpdoc_name";s:15:"previewing_only";}i:4;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:5;a:7:{s:4:"name";s:15:"insert_as_admin";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:115:"Whether to insert it as an admin (any Comcode parsing will be carried out with admin privileges) (null: autodetect)";s:11:"phpdoc_name";s:15:"insert_as_admin";}i:6;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:66:"The member to use for ownership permissions (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}}s:4:"name";s:22:"do_comcode_attachments";s:11:"description";s:274:"Get an array containing new Comcode, and Tempcode. The function wraps the normal comcode_to_tempcode function. The function will do attachment management, including deleting of attachments that have become unused due to editing of some Comcode and removing of the reference.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"A map containing 'Comcode' (after substitution for tying down the new attachments) and 'tempcode'";}}s:28:"_handle_data_url_attachments";a:5:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:11:"Our Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"The type the attachment will be used for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The ID the attachment will be used for";s:11:"phpdoc_name";s:2:"id";}i:3;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:28:"_handle_data_url_attachments";s:11:"description";s:104:"Convert attachments embedded as data URLs (usually the result of pasting in) to real attachment Comcode.";s:5:"flags";a:0:{}}s:29:"_handle_attachment_extraction";a:5:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:11:"Our Comcode";s:11:"phpdoc_name";s:7:"comcode";}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:23:"The attachment file key";s:11:"phpdoc_name";s:3:"key";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"The type the attachment will be used for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The ID the attachment will be used for";s:11:"phpdoc_name";s:2:"id";}i:4;a:5:{s:4:"name";s:15:"matches_extract";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:114:"Reg-exp grabbed parameters from the extract marker attachment (we will re-use them for each individual attachment)";s:11:"phpdoc_name";s:15:"matches_extract";}i:5;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:29:"_handle_attachment_extraction";s:11:"description";s:71:"Convert attachments marked for 'extraction' to real attachment Comcode.";s:5:"flags";a:0:{}}s:23:"_check_attachment_count";a:5:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_check_attachment_count";s:11:"description";s:81:"Check that not too many attachments have been uploaded for the member submitting.";s:5:"flags";a:0:{}}s:31:"insert_lang_comcode_attachments";a:6:{s:8:"filename";s:24:"sources/attachments2.php";s:10:"parameters";a:8:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}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:50:"The level of importance this language string holds";s:11:"phpdoc_name";s:5:"level";s:3:"set";s:7:"1 2 3 4";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:19:"The Comcode content";s:11:"phpdoc_name";s:4:"text";}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:59:"The arbitrary type that the attached is for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:4;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:5;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:6;a:7:{s:4:"name";s:15:"insert_as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether to insert it as an admin (any Comcode parsing will be carried out with admin privileges)";s:11:"phpdoc_name";s:15:"insert_as_admin";}i:7;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:66:"The member to use for ownership permissions (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}}s:4:"name";s:31:"insert_lang_comcode_attachments";s:11:"description";s:92:"Insert some Comcode content that may contain attachments, and return the language string ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:30:"final_attachments_from_preview";a:5:{s:8:"filename";s:24:"sources/attachments2.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:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:30:"final_attachments_from_preview";s:11:"description";s:101:"Finalise attachments which were created during a preview, so that they have the proper reference IDs.";s:5:"flags";a:0:{}}s:31:"update_lang_comcode_attachments";a:6:{s:8:"filename";s:24:"sources/attachments3.php";s:10:"parameters";a:7:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:7:"lang_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"The language string";s:11:"phpdoc_name";s:7:"lang_id";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:12:"The new text";s:11:"phpdoc_name";s:4:"text";}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:59:"The arbitrary type that the attached is for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:4;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:5;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:6;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:67:"The member that owns the content this is for (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}}s:4:"name";s:31:"update_lang_comcode_attachments";s:11:"description";s:96:"Update a language string, in such a way that new attachments are created if they were specified.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:31:"The language string save fields";}}s:18:"_delete_attachment";a:5:{s:8:"filename";s:24:"sources/attachments3.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:27:"The attachment ID to delete";s:11:"phpdoc_name";s:2:"id";}i:1;a:6:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";s:3:"set";s:9:"cms forum";}}s:4:"name";s:18:"_delete_attachment";s:11:"description";s:31:"Delete the specified attachment";s:5:"flags";a:0:{}}s:26:"delete_comcode_attachments";a:5:{s:8:"filename";s:24:"sources/attachments3.php";s:10:"parameters";a:4:{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:59:"The arbitrary type that the attached is for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:3;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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:"Whether to force this, regardless of config";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:26:"delete_comcode_attachments";s:11:"description";s:162:"Deletes all the attachments a given language string holds. Well, not quite! It deletes all references, and any attachments have through it, run out of references.";s:5:"flags";a:0:{}}s:31:"delete_lang_comcode_attachments";a:5:{s:8:"filename";s:24:"sources/attachments3.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"lang_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"The language string";s:11:"phpdoc_name";s:7:"lang_id";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:59:"The arbitrary type that the attached is for (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:65:"The ID in the set of the arbitrary types that the attached is for";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:31:"delete_lang_comcode_attachments";s:11:"description";s:108:"This function is the same as delete_comcode_attachments, except that it deletes the language string as well.";s:5:"flags";a:0:{}}s:17:"render_author_box";a:6:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:4:{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:10:"Author row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:17:"render_author_box";s:11:"description";s:21:"Render an author box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The author box";}}s:14:"authors_script";a:5:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"authors_script";s:11:"description";s:44:"Shows an HTML page of all authors clickably.";s:5:"flags";a:0:{}}s:23:"get_author_id_from_name";a:6:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of an author";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:23:"get_author_id_from_name";s:11:"description";s:101:"Get a member ID from an author name. First by trying authors table, second by trying forum usernames.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:32:"The member ID (null: none found)";}}s:10:"add_author";a:5:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of an author";s:11:"phpdoc_name";s:6:"author";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the authors home page";s:11:"phpdoc_name";s:3:"url";}i:2;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:52:"The member ID of the author (null: no forum profile)";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"A description of the author";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:6:"skills";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"A terse string showing author skills";s:11:"phpdoc_name";s:6:"skills";}i:5;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:6;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:10:"add_author";s:11:"description";s:207:"Adds an author (re-creating them if they already exist - thus it also serves to edit; the reason for this is the fluidity of authors - members are automatically authors even before an author profile is made)";s:5:"flags";a:0:{}}s:13:"delete_author";a:5:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of an author";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:13:"delete_author";s:11:"description";s:16:"Delete an author";s:5:"flags";a:0:{}}s:26:"has_edit_author_permission";a:6:{s:8:"filename";s:19:"sources/authors.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"An author";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:26:"has_edit_author_permission";s:11:"description";s:61:"Find if a member's usergroup has permission to edit an author";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether the member can edit this author";}}s:28:"has_delete_author_permission";a:6:{s:8:"filename";s:19:"sources/authors.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"An author";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:28:"has_delete_author_permission";s:11:"description";s:63:"Find if a member's usergroup has permission to delete an author";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether the member can edit this author";}}s:13:"merge_authors";a:5:{s:8:"filename";s:19:"sources/authors.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The first author (being removed effectively)";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:7:"ID_TEXT";s:11:"description";s:39:"The second author (subsuming the first)";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:13:"merge_authors";s:11:"description";s:18:"Merge two authors.";s:5:"flags";a:0:{}}s:18:"clear_cms_autosave";a:5:{s:8:"filename";s:20:"sources/autosave.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"clear_cms_autosave";s:11:"description";s:66:"Declare that an action succeeded - delete safety autosave cookies.";s:5:"flags";a:0:{}}s:15:"find_awards_for";a:6:{s:8:"filename";s:18:"sources/awards.php";s:10:"parameters";a:2:{i:0;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:22:"The award content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"find_awards_for";s:11:"description";s:45:"Get details of awards won for a content item.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"List of awards won";}}s:10:"give_award";a:5:{s:8:"filename";s:18:"sources/awards.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"award_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The award ID";s:11:"phpdoc_name";s:8:"award_id";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;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:36:"Time the award was given (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:10:"give_award";s:11:"description";s:14:"Give an award.";s:5:"flags";a:0:{}}s:16:"get_award_fields";a:6:{s:8:"filename";s:18:"sources/awards.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:16:"The content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;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:79:"The content ID (null: not added yet - therefore can't be holding the award yet)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:16:"get_award_fields";s:11:"description";s:68:"Get all the award selection fields for a content type and content ID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The fields";}}s:20:"handle_award_setting";a:5:{s:8:"filename";s:18:"sources/awards.php";s:10:"parameters";a:2:{i:0;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:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"handle_award_setting";s:11:"description";s:103:"Situation: something that may have awards has just been added/edited. Action: add any specified awards.";s:5:"flags";a:0:{}}s:14:"add_award_type";a:6:{s:8:"filename";s:19:"sources/awards2.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:10:"SHORT_TEXT";s:11:"description";s:9:"The 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:9:"LONG_TEXT";s:11:"description";s:15:"The description";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:6:"points";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:3;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:38:"The content type the award type is for";s:11:"phpdoc_name";s:12:"content_type";}i:4;a:5:{s:4:"name";s:12:"hide_awardee";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:58:"Whether to not show the awardee when displaying this award";s:11:"phpdoc_name";s:12:"hide_awardee";}i:5;a:5:{s:4:"name";s:17:"update_time_hours";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:14:"add_award_type";s:11:"description";s:19:"Make an award type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:15:"edit_award_type";a:5:{s:8:"filename";s:19:"sources/awards2.php";s:10:"parameters";a:7:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:6:"points";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:5:{s:4:"name";s:12:"content_type";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:5:{s:4:"name";s:12:"hide_awardee";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:58:"Whether to not show the awardee when displaying this award";s:11:"phpdoc_name";s:12:"hide_awardee";}i:6;a:5:{s:4:"name";s:17:"update_time_hours";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:"edit_award_type";s:11:"description";s:18:"Edit an award type";s:5:"flags";a:0:{}}s:17:"delete_award_type";a:5:{s:8:"filename";s:19:"sources/awards2.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"delete_award_type";s:11:"description";s:21:"Delete an award type.";s:5:"flags";a:0:{}}s:16:"get_table_backup";a:5:{s:8:"filename";s:18:"sources/backup.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"log_file";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:23:"The logfile to write to";s:11:"phpdoc_name";s:8:"log_file";}i:1;a:5:{s:4:"name";s:7:"db_meta";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The meta tablename";s:11:"phpdoc_name";s:7:"db_meta";}i:2;a:5:{s:4:"name";s:15:"db_meta_indices";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The index-meta tablename";s:11:"phpdoc_name";s:15:"db_meta_indices";}i:3;a:5:{s:4:"name";s:16:"install_php_file";s:3:"ref";b:1;s:4:"type";s:8:"resource";s:11:"description";s:19:"File to write in to";s:11:"phpdoc_name";s:16:"install_php_file";}}s:4:"name";s:16:"get_table_backup";s:11:"description";s:62:"Write PHP code for the restoration of database data into file.";s:5:"flags";a:0:{}}s:11:"make_backup";a:6:{s:8:"filename";s:18:"sources/backup.php";s:10:"parameters";a:3:{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:25:"The filename to backup to";s:11:"phpdoc_name";s:4:"file";}i:1;a:8:{s:4:"name";s:6:"b_type";s:7:"default";s:4:"full";s:11:"default_raw";s:6:"'full'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The type of backup to do";s:11:"phpdoc_name";s:6:"b_type";s:3:"set";s:16:"full incremental";}i:2;a:7:{s:4:"name";s:8:"max_size";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:51:"The maximum size of a file to include in the backup";s:11:"phpdoc_name";s:8:"max_size";}}s:4:"name";s:11:"make_backup";s:11:"description";s:32:"Backend function to do a backup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Success message";}}s:21:"directories_to_backup";a:6:{s:8:"filename";s:18:"sources/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"directories_to_backup";s:11:"description";s:198:"Find which directories to backup.We only backup directories that we know as Composr ones (users put all kinds of stuff in root directories that would not be feasible to include in the backup scope).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:31:"A list of directories to backup";}}s:21:"deliver_remote_backup";a:5:{s:8:"filename";s:18:"sources/backup.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:6:"string";s:11:"description";s:12:"File to send";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:21:"deliver_remote_backup";s:11:"description";s:33:"Send a backup to a remote server.";s:5:"flags";a:0:{}}s:13:"init__banners";a:5:{s:8:"filename";s:19:"sources/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__banners";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"banner_select_sql";a:6:{s:8:"filename";s:19:"sources/banners.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:6:"b_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:41:"The banner type needed (null: don't care)";s:11:"phpdoc_name";s:6:"b_type";}i:1;a:7:{s:4:"name";s:12:"do_type_join";s:7:"default";s:13:"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:"If we want the banner type row joined in";s:11:"phpdoc_name";s:12:"do_type_join";}i:2;a:7:{s:4:"name";s:15:"banner_to_avoid";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:57:"Do not show this specific banner (null: none to not show)";s:11:"phpdoc_name";s:15:"banner_to_avoid";}i:3;a:7:{s:4:"name";s:6:"region";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:"Region to show for (null: auto-detect)";s:11:"phpdoc_name";s:6:"region";}}s:4:"name";s:17:"banner_select_sql";s:11:"description";s:41:"Get SQL for selecting appropriate banners";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Banner selection SQL";}}s:14:"banners_script";a:6:{s:8:"filename";s:19:"sources/banners.php";s:10:"parameters";a:8:{i:0;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:49:"Whether to return a result rather than outputting";s:11:"phpdoc_name";s:3:"ret";}i:1;a:8:{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:7:"?string";s:11:"description";s:72:"Whether we are displaying or click-processing (null: get from URL param)";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:10:""click" """;}i:2;a:7:{s:4:"name";s:4:"dest";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:72:"Specific banner to display (null: get from URL param) (blank: randomise)";s:11:"phpdoc_name";s:4:"dest";}i:3;a:7:{s:4:"name";s:6:"b_type";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:49:"Banner type to display (null: get from URL param)";s:11:"phpdoc_name";s:6:"b_type";}i:4;a:7:{s:4:"name";s:6:"source";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:157:"The banner advertisor who is actively displaying the banner (calling up this function) and hence is rewarded (null: get from URL param) (blank: our own site)";s:11:"phpdoc_name";s:6:"source";}i:5;a:7:{s:4:"name";s:5:"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:42:"The width (null: standard for banner type)";s:11:"phpdoc_name";s:5:"width";}i:6;a:7:{s:4:"name";s:6:"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:43:"The height (null: standard for banner type)";s:11:"phpdoc_name";s:6:"height";}i:7;a:7:{s:4:"name";s:6:"region";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:"Region to show for (null: auto-detect)";s:11:"phpdoc_name";s:6:"region";}}s:4:"name";s:14:"banners_script";s:11:"description";s:55:"Show a banner according to GET parameter specification.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:52:"Result (null: we weren't asked to return the result)";}}s:11:"show_banner";a:6:{s:8:"filename";s:19:"sources/banners.php";s:10:"parameters";a:11:{i:0;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 banner";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:10:"title_text";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:63:"The title text of the banner (displayed for a text banner only)";s:11:"phpdoc_name";s:10:"title_text";}i:2;a:5:{s:4:"name";s:7:"caption";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:25:"The caption of the banner";s:11:"phpdoc_name";s:7:"caption";}i:3;a:5:{s:4:"name";s:11:"direct_code";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The full HTML/PHP for the banner";s:11:"phpdoc_name";s:11:"direct_code";}i:4;a:5:{s:4:"name";s:7:"img_url";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:7:"img_url";}i:5;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:78:"The name of the banner for the site that will get the return-hit (blank: none)";s:11:"phpdoc_name";s:6:"source";}i:6;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the banner's target";s:11:"phpdoc_name";s:3:"url";}i:7;a:5:{s:4:"name";s:6:"b_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The banner type";s:11:"phpdoc_name";s:6:"b_type";}i:8;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 submitting user";s:11:"phpdoc_name";s:9:"submitter";}i:9;a:7:{s:4:"name";s:5:"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:42:"The width (null: standard for banner type)";s:11:"phpdoc_name";s:5:"width";}i:10;a:7:{s:4:"name";s:6:"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:43:"The height (null: standard for banner type)";s:11:"phpdoc_name";s:6:"height";}}s:4:"name";s:11:"show_banner";s:11:"description";s:55:"Get the Tempcode for the display of the defined banner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The rendered banner";}}s:22:"render_banner_type_box";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:4:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:22:"render_banner_type_box";s:11:"description";s:62:"Get Tempcode for a banner type 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:17:"render_banner_box";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:4:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:17:"render_banner_box";s:11:"description";s:57:"Get Tempcode for a banner 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:34:"create_selection_list_banner_types";a:6:{s:8:"filename";s:20:"sources/banners2.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:6:"?mixed";s:11:"description";s:56:"The currently selected banner type (null: none selected)";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:34:"create_selection_list_banner_types";s:11:"description";s:56:"Get a nice, formatted XHTML list to select a banner type";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The list of banner types";}}s:29:"create_selection_list_banners";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:2:{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:68:"The ID of the banner selected by default (null: no specific default)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:10:"only_owned";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:65:"Only show banners owned by the member (null: no such restriction)";s:11:"phpdoc_name";s:10:"only_owned";}}s:4:"name";s:29:"create_selection_list_banners";s:11:"description";s:22:"Get a list of banners.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:22:"get_banner_form_fields";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:17:{i:0;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:74:"Whether to simplify the banner interface (for the Point Store buy process)";s:11:"phpdoc_name";s:10:"simplified";}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:7:"ID_TEXT";s:11:"description";s:22:"The name of the banner";s:11:"phpdoc_name";s:4:"name";}i:2;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:3;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:4;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:5;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: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:36:"Any notes associated with the banner";s:11:"phpdoc_name";s:5:"notes";}i:7;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:8;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:9;a:8:{s:4:"name";s:8:"the_type";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:56:"The type of banner (0=permanent, 1=campaign, 2=fallback)";s:11:"phpdoc_name";s:8:"the_type";s:3:"set";s:5:"0 1 2";}i:10;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:11;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:12;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:13;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:14;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:15;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:16;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:22:"get_banner_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:49:"A pair: The input field Tempcode, JavaScript code";}}s:12:"check_banner";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:6:{i:0;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";}i:1;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:2;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:3;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:4;a:7:{s:4:"name";s:14:"url_param_name";s:7:"default";s:9:"image_url";s:11:"default_raw";s:11:"'image_url'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Param name for possible URL field";s:11:"phpdoc_name";s:14:"url_param_name";}i:5;a:7:{s:4:"name";s:15:"file_param_name";s:7:"default";s:4:"file";s:11:"default_raw";s:6:"'file'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"Param name for possible upload field";s:11:"phpdoc_name";s:15:"file_param_name";}}s:4:"name";s:12:"check_banner";s:11:"description";s:35:"Check the uploaded banner is valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:35:"A pair: The URL, and the title text";}}s:10:"add_banner";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:23:{i:0;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 banner";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"imgurl";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:6:"imgurl";}i:2;a:5:{s:4:"name";s:10:"title_text";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";}i:3;a:5:{s:4:"name";s:7:"caption";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:5:{s:4:"name";s:11:"direct_code";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:6:{s:4:"name";s:17:"campaignremaining";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:6;a:5:{s:4:"name";s:8:"site_url";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:7;a:6:{s:4:"name";s:17:"importancemodulus";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:8;a:5:{s:4:"name";s:5:"notes";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:9;a:6:{s:4:"name";s:8:"the_type";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:10;a:5:{s:4:"name";s:11:"expiry_date";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:36:"The banner expiry date (null: never)";s:11:"phpdoc_name";s:11:"expiry_date";}i:11;a:5:{s:4:"name";s:9:"submitter";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:12;a:7:{s:4:"name";s:9:"validated";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 the banner has been validated";s:11:"phpdoc_name";s:9:"validated";}i:13;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:14;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:15;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:16;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:41:"The time the banner was added (null: now)";s:11:"phpdoc_name";s:4:"time";}i:17;a:7:{s:4:"name";s:9:"hits_from";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:48:"The number of return hits from this banners site";s:11:"phpdoc_name";s:9:"hits_from";}i:18;a:7:{s:4:"name";s:7:"hits_to";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:46:"The number of banner hits to this banners site";s:11:"phpdoc_name";s:7:"hits_to";}i:19;a:7:{s:4:"name";s:10:"views_from";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:49:"The number of return views from this banners site";s:11:"phpdoc_name";s:10:"views_from";}i:20;a:7:{s:4:"name";s:8:"views_to";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:47:"The number of banner views to this banners site";s:11:"phpdoc_name";s:8:"views_to";}i:21;a:7:{s:4:"name";s:9:"edit_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:34:"The banner edit date (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:22;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:10:"add_banner";s:11:"description";s:83:"Add a banner to the database, and return the new ID of that banner in the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:11:"edit_banner";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:21:{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:30:"The current name of the banner";s:11:"phpdoc_name";s:8:"old_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:26:"The new name of the banner";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:6:"imgurl";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:6:"imgurl";}i:3;a:5:{s:4:"name";s:10:"title_text";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";}i:4;a:5:{s:4:"name";s:7:"caption";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:5;a:5:{s:4:"name";s:11:"direct_code";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:6;a:6:{s:4:"name";s:17:"campaignremaining";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:7;a:5:{s:4:"name";s:8:"site_url";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:8;a:6:{s:4:"name";s:17:"importancemodulus";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:9;a:5:{s:4:"name";s:5:"notes";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:10;a:6:{s:4:"name";s:8:"the_type";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:11;a:5:{s:4:"name";s:11:"expiry_date";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:36:"The banner expiry date (null: never)";s:11:"phpdoc_name";s:11:"expiry_date";}i:12;a:5:{s:4:"name";s:9:"submitter";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"The banners submitter (null: leave unchanged)";s:11:"phpdoc_name";s:9:"submitter";}i:13;a:5:{s:4:"name";s:9:"validated";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:14;a:5:{s:4:"name";s:6:"b_type";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:15;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:16;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:17;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:18;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:19;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}i:20;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:11:"edit_banner";s:11:"description";s:14:"Edit a banner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:13:"delete_banner";a:5:{s:8:"filename";s:20:"sources/banners2.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:7:"ID_TEXT";s:11:"description";s:22:"The name of the banner";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:13:"delete_banner";s:11:"description";s:16:"Delete a banner.";s:5:"flags";a:0:{}}s:15:"add_banner_type";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:7:{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:25:"The ID of the banner type";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"is_textual";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:5:{s:4:"name";s:11:"image_width";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:5:{s:4:"name";s:12:"image_height";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:5:{s:4:"name";s:13:"max_file_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:96:"The maximum file size for the banners in Kilobytes (this is a string length for textual banners)";s:11:"phpdoc_name";s:13:"max_file_size";}i:5;a:5:{s:4:"name";s:14:"comcode_inline";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";}i:6;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:15:"add_banner_type";s:11:"description";s:18:"Add a banner type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:16:"edit_banner_type";a:6:{s:8:"filename";s:20:"sources/banners2.php";s:10:"parameters";a:8:{i:0;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:34:"The original ID of the banner type";s:11:"phpdoc_name";s:6:"old_id";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The ID of the banner type";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:10:"is_textual";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:3;a:5:{s:4:"name";s:11:"image_width";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:4;a:5:{s:4:"name";s:12:"image_height";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:5;a:5:{s:4:"name";s:13:"max_file_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:96:"The maximum file size for the banners in Kilobytes (this is a string length for textual banners)";s:11:"phpdoc_name";s:13:"max_file_size";}i:6;a:5:{s:4:"name";s:14:"comcode_inline";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";}i:7;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:16:"edit_banner_type";s:11:"description";s:19:"Edit a banner type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:18:"delete_banner_type";a:5:{s:8:"filename";s:20:"sources/banners2.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:25:"The ID of the banner type";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"delete_banner_type";s:11:"description";s:21:"Delete a banner type.";s:5:"flags";a:0:{}}s:19:"block_helper_script";a:5:{s:8:"filename";s:21:"sources/block_add.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"block_helper_script";s:11:"description";s:44:"Shows an HTML page for making block Comcode.";s:5:"flags";a:0:{}}s:26:"block_bottom_rss__cache_on";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:21:"The block parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:26:"block_bottom_rss__cache_on";s:11:"description";s:39:"Find the cache signature for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The cache signature.";}}s:24:"block_main_rss__cache_on";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:21:"The block parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:24:"block_main_rss__cache_on";s:11:"description";s:39:"Find the cache signature for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The cache signature.";}}s:32:"staff_checklist_time_ago_and_due";a:6:{s:8:"filename";s:39:"sources/blocks/main_staff_checklist.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"seconds_ago";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:163:"The number of seconds ago since it last happened (null: never happened) OR If $recur_hours is null then the number of seconds until it happens (null: won't happen)";s:11:"phpdoc_name";s:11:"seconds_ago";}i:1;a:7:{s:4:"name";s:11:"recur_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:62:"It should be done every this many hours (null: never happened)";s:11:"phpdoc_name";s:11:"recur_hours";}}s:4:"name";s:32:"staff_checklist_time_ago_and_due";s:11:"description";s:57:"Work out when an action should happen, and last happened.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:91:"A pair: Tempcode to display, and the number of seconds to go until the action should happen";}}s:20:"block_menu__cache_on";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:21:"The block parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:20:"block_menu__cache_on";s:11:"description";s:39:"Find the cache signature for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The cache signature.";}}s:24:"block_side_rss__cache_on";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:21:"The block parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:24:"block_side_rss__cache_on";s:11:"description";s:39:"Find the cache signature for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The cache signature.";}}s:31:"block_params_to_block_signature";a:6:{s:8:"filename";s:18:"sources/blocks.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:14:"The parameters";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:31:"block_params_to_block_signature";s:11:"description";s:56:"Convert the parameters for a block, to a regexp pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The parameters, as a pattern";}}s:21:"block_signature_check";a:6:{s:8:"filename";s:18:"sources/blocks.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"allowed";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:32:"The acceptable parameter pattern";s:11:"phpdoc_name";s:7:"allowed";}i:1;a:5:{s:4:"name";s:4:"used";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The given parameters";s:11:"phpdoc_name";s:4:"used";}}s:4:"name";s:21:"block_signature_check";s:11:"description";s:51:"Check whether some block parameters are acceptable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:6:"Answer";}}s:16:"bookmarks_script";a:5:{s:8:"filename";s:21:"sources/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"bookmarks_script";s:11:"description";s:41:"Script to make a bookmark add-form popup.";s:5:"flags";a:0:{}}s:17:"add_bookmark_form";a:6:{s:8:"filename";s:21:"sources/bookmarks.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"post_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:27:"Where the form should go to";s:11:"phpdoc_name";s:8:"post_url";}}s:4:"name";s:17:"add_bookmark_form";s:11:"description";s:49:"Get the form to add a bookmark / set breadcrumbs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The form";}}s:12:"add_bookmark";a:6:{s:8:"filename";s:21:"sources/bookmarks.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:28:"Member who it will belong to";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:6:"folder";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"Folder (blank: root)";s:11:"phpdoc_name";s:6:"folder";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Title/caption";s:11:"phpdoc_name";s:5:"title";}i:3;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The page-link or URL";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:12:"add_bookmark";s:11:"description";s:15:"Add a bookmark.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:13:"edit_bookmark";a:5:{s:8:"filename";s:21:"sources/bookmarks.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:9:"AUTO_LINK";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:24:"Member who it belongs to";s:11:"phpdoc_name";s:6:"member";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Title/caption";s:11:"phpdoc_name";s:5:"title";}i:3;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:13:"edit_bookmark";s:11:"description";s:16:"Edit a bookmark.";s:5:"flags";a:0:{}}s:15:"delete_bookmark";a:5:{s:8:"filename";s:21:"sources/bookmarks.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;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:45:"Member who it belongs to (null: do not check)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"delete_bookmark";s:11:"description";s:18:"Delete a bookmark.";s:5:"flags";a:0:{}}s:29:"load_breadcrumb_substitutions";a:6:{s:8:"filename";s:23:"sources/breadcrumbs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"segments";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The default breadcrumb segments";s:11:"phpdoc_name";s:8:"segments";}}s:4:"name";s:29:"load_breadcrumb_substitutions";s:11:"description";s:50:"Load all breadcrumb substitutions and return them.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"The adjusted breadcrumb segments";}}s:12:"init__caches";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__caches";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:20:"persistent_cache_get";a:6:{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:5:"mixed";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:14:"min_cache_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:73:"Minimum timestamp that entries from the cache may hold (null: don't care)";s:11:"phpdoc_name";s:14:"min_cache_date";}}s:4:"name";s:20:"persistent_cache_get";s:11:"description";s:35:"Get data from the persistent cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The data (null: not found / null entry)";}}s:20:"persistent_cache_set";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:3:"Key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:11:"server_wide";s:7:"default";s:13:"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 it is server-wide data";s:11:"phpdoc_name";s:11:"server_wide";}i:3;a:7:{s:4:"name";s:11:"expire_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:100:"The expiration time in seconds. (null: Default expiry in 60 minutes, or never if it is server-wide).";s:11:"phpdoc_name";s:11:"expire_secs";}}s:4:"name";s:20:"persistent_cache_set";s:11:"description";s:35:"Put data into the persistent cache.";s:5:"flags";a:0:{}}s:23:"persistent_cache_delete";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:5:"mixed";s:11:"description";s:8:"Key name";s:11:"phpdoc_name";s:3:"key";}i:1;a:7:{s:4:"name";s:9:"substring";s:7:"default";s:13:"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 we are deleting via substring";s:11:"phpdoc_name";s:9:"substring";}}s:4:"name";s:23:"persistent_cache_delete";s:11:"description";s:38:"Delete data from the persistent cache.";s:5:"flags";a:0:{}}s:22:"erase_persistent_cache";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"erase_persistent_cache";s:11:"description";s:59:"Remove all data from the persistent cache and static cache.";s:5:"flags";a:0:{}}s:15:"has_caching_for";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:1:{i:0;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Cache type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:32:"block lang comcode_page template";}}s:4:"name";s:15:"has_caching_for";s:11:"description";s:35:"Check to see if caching is enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether it has the caching";}}s:7:"decache";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"cached_for";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:132:"The type of what we are caching (e.g. block name) (ID_TEXT or an array of ID_TEXT, the array may be pairs re-specifying $identifier)";s:11:"phpdoc_name";s:10:"cached_for";}i:1;a:7:{s:4:"name";s:10:"identifier";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:89:"A map of identifiying characteristics (null: no identifying characteristics, decache all)";s:11:"phpdoc_name";s:10:"identifier";}i:2;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:43:"Member to only decache for (null: no limit)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:7:"decache";s:11:"description";s:70:"Remove an item from the general cache (most commonly used for blocks).";s:5:"flags";a:0:{}}s:13:"find_cache_on";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The codename of what will be checked for caching";s:11:"phpdoc_name";s:8:"codename";}}s:4:"name";s:13:"find_cache_on";s:11:"description";s:114:"Find the cache-on parameters for 'codename's caching style (prevents us needing to load up extra code to find it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"The cached result (null: no cached result)";}}s:15:"get_cache_entry";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The codename to check for caching";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:16:"cache_identifier";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:41:"The further restraints (a serialized map)";s:11:"phpdoc_name";s:16:"cache_identifier";}i:2;a:5:{s:4:"name";s:19:"special_cache_flags";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Special cache flags";s:11:"phpdoc_name";s:19:"special_cache_flags";}i:3;a:7:{s:4:"name";s:3:"ttl";s:7:"default";i:10000;s:11:"default_raw";s:5:"10000";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:55:"The TTL for the cache entry. Defaults to a very big ttl";s:11:"phpdoc_name";s:3:"ttl";}i:4;a:7:{s:4:"name";s:8:"tempcode";s:7:"default";s:13:"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 caching Tempcode (needs special care)";s:11:"phpdoc_name";s:8:"tempcode";}i:5;a:7:{s:4:"name";s:16:"caching_via_cron";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:179:"Whether to defer caching to CRON. Note that this option only works if the block's defined cache signature depends only on $map (timezone and bot-type are automatically considered)";s:11:"phpdoc_name";s:16:"caching_via_cron";}i:6;a:7:{s:4:"name";s:3:"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:73:"Parameters to call up block with if we have to defer caching (null: none)";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:15:"get_cache_entry";s:11:"description";s:80:"Find the cached result of what is named by codename and the further constraints.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:42:"The cached result (null: no cached result)";}}s:18:"_get_cache_entries";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"dets";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:65:"An array of tuples of parameters (as per get_cache_entry, almost)";s:11:"phpdoc_name";s:4:"dets";}i:1;a:7:{s:4:"name";s:19:"special_cache_flags";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:35:"Special cache flags (null: unknown)";s:11:"phpdoc_name";s:19:"special_cache_flags";}}s:4:"name";s:18:"_get_cache_entries";s:11:"description";s:72:"Ability to do multiple get_cache_entry at once, for performance reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"Array of results";}}s:8:"_decache";a:5:{s:8:"filename";s:19:"sources/caches2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"cached_for";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:132:"The type of what we are caching (e.g. block name) (ID_TEXT or an array of ID_TEXT, the array may be pairs re-specifying $identifier)";s:11:"phpdoc_name";s:10:"cached_for";}i:1;a:7:{s:4:"name";s:10:"identifier";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:89:"A map of identifiying characteristics (null: no identifying characteristics, decache all)";s:11:"phpdoc_name";s:10:"identifier";}i:2;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:43:"Member to only decache for (null: no limit)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:8:"_decache";s:11:"description";s:70:"Remove an item from the general cache (most commonly used for blocks).";s:5:"flags";a:0:{}}s:16:"request_via_cron";a:5:{s:8:"filename";s:19:"sources/caches2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The codename of the block";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:73:"Parameters to call up block with if we have to defer caching (null: none)";s:11:"phpdoc_name";s:3:"map";}i:2;a:5:{s:4:"name";s:19:"special_cache_flags";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:38:"Flags representing how we should cache";s:11:"phpdoc_name";s:19:"special_cache_flags";}i:3;a:5:{s:4:"name";s:8:"tempcode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether we are caching Tempcode (needs special care)";s:11:"phpdoc_name";s:8:"tempcode";}}s:4:"name";s:16:"request_via_cron";s:11:"description";s:63:"Request that CRON loads up a block's caching in the background.";s:5:"flags";a:0:{}}s:14:"put_into_cache";a:5:{s:8:"filename";s:19:"sources/caches2.php";s:10:"parameters";a:15:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:11:"MINIID_TEXT";s:11:"description";s:33:"The codename to check for caching";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:3:"ttl";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:42:"The TTL of what is being cached in minutes";s:11:"phpdoc_name";s:3:"ttl";}i:2;a:5:{s:4:"name";s:16:"cache_identifier";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:93:"The requisite situational information (a serialized map) [-> further restraints when reading]";s:11:"phpdoc_name";s:16:"cache_identifier";}i:3;a:5:{s:4:"name";s:12:"staff_status";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:53:"Staff status to limit to (null: Not limiting by this)";s:11:"phpdoc_name";s:12:"staff_status";}i:4;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:47:"Member to limit to (null: Not limiting by this)";s:11:"phpdoc_name";s:6:"member";}i:5;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:74:"Sorted permissive usergroup list to limit to (blank: Not limiting by this)";s:11:"phpdoc_name";s:6:"groups";}i:6;a:5:{s:4:"name";s:6:"is_bot";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:51:"Bot status to limit to (null: Not limiting by this)";s:11:"phpdoc_name";s:6:"is_bot";}i:7;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:11:"MINIID_TEXT";s:11:"description";s:50:"Timezone to limit to (blank: Not limiting by this)";s:11:"phpdoc_name";s:8:"timezone";}i:8;a:5:{s:4:"name";s:5:"cache";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:25:"The result we are caching";s:11:"phpdoc_name";s:5:"cache";}i:9;a:7:{s:4:"name";s:15:"_langs_required";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:106:"A list of the language files that need loading to use Tempcode embedded in the cache (null: none required)";s:11:"phpdoc_name";s:15:"_langs_required";}i:10;a:7:{s:4:"name";s:21:"_javascripts_required";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:108:"A list of the javascript files that need loading to use Tempcode embedded in the cache (null: none required)";s:11:"phpdoc_name";s:21:"_javascripts_required";}i:11;a:7:{s:4:"name";s:14:"_csss_required";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:101:"A list of the css files that need loading to use Tempcode embedded in the cache (null: none required)";s:11:"phpdoc_name";s:14:"_csss_required";}i:12;a:7:{s:4:"name";s:8:"tempcode";s:7:"default";s:13:"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 caching Tempcode (needs special care)";s:11:"phpdoc_name";s:8:"tempcode";}i:13;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:56:"The theme this is being cached for (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}i:14;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:14:"?LANGUAGE_NAME";s:11:"description";s:62:"The language this is being cached for (null: current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:14:"put_into_cache";s:11:"description";s:28:"Put a result into the cache.";s:5:"flags";a:0:{}}s:13:"init__caches3";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__caches3";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:12:"auto_decache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:16:"changed_base_url";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the base URL has just been changed";s:11:"phpdoc_name";s:16:"changed_base_url";}}s:4:"name";s:12:"auto_decache";s:11:"description";s:27:"Automatically empty caches.";s:5:"flags";a:0:{}}s:15:"composr_cleanup";a:6:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:13:"cleanup_tools";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:36:"The cleanup tools to run (null: all)";s:11:"phpdoc_name";s:13:"cleanup_tools";}}s:4:"name";s:15:"composr_cleanup";s:11:"description";s:32:"Run the specified cleanup tools.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"Any messages returned";}}s:17:"erase_block_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:26:"erase_cache_signatures_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:26:"Erase cache signatures too";s:11:"phpdoc_name";s:26:"erase_cache_signatures_too";}i:1;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:52:"Only erase caching for this theme (null: all themes)";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:17:"erase_block_cache";s:11:"description";s:22:"Erase the block cache.";s:5:"flags";a:0:{}}s:19:"erase_comcode_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"erase_comcode_cache";s:11:"description";s:96:"Erase the Comcode cache. Warning: This can take a long time on large sites, so is best to avoid.";s:5:"flags";a:0:{}}s:17:"erase_thumb_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"erase_thumb_cache";s:11:"description";s:26:"Erase the thumbnail cache.";s:5:"flags";a:0:{}}s:21:"erase_cached_language";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"erase_cached_language";s:11:"description";s:25:"Erase the language cache.";s:5:"flags";a:0:{}}s:22:"erase_cached_templates";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:13:"preserve_some";s:7:"default";s:13:"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 preserve CSS and JS files that might be linked to between requests";s:11:"phpdoc_name";s:13:"preserve_some";}i:1;a:7:{s:4:"name";s:14:"only_templates";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:97:"Only erase specific templates with the following filename, excluding suffix(es) (null: erase all)";s:11:"phpdoc_name";s:14:"only_templates";}i:2;a:7:{s:4:"name";s:15:"raw_file_regexp";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:93:"The original template must contain a match for this regular expression (null: no restriction)";s:11:"phpdoc_name";s:15:"raw_file_regexp";}i:3;a:7:{s:4:"name";s:26:"rebuild_some_deleted_files";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:151:"Whether to rebuild some files that are deleted (be very careful about this, it is high-intensity, and may break due to in-memory caches still existing)";s:11:"phpdoc_name";s:26:"rebuild_some_deleted_files";}}s:4:"name";s:22:"erase_cached_templates";s:11:"description";s:49:"Erase all template caches (caches in all themes).";s:5:"flags";a:0:{}}s:24:"erase_comcode_page_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"erase_comcode_page_cache";s:11:"description";s:28:"Erase the Comcode page cache";s:5:"flags";a:0:{}}s:24:"erase_theme_images_cache";a:5:{s:8:"filename";s:19:"sources/caches3.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"erase_theme_images_cache";s:11:"description";s:28:"Erase the theme images cache";s:5:"flags";a:0:{}}s:14:"init__calendar";a:5:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__calendar";s:11:"description";s:35:"Standard code module init function.";s:5:"flags";a:0:{}}s:16:"render_event_box";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:4:{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:9:"Event row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_event_box";s:11:"description";s:20:"Render an event box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The event box";}}s:24:"render_calendar_type_box";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:4:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:24:"render_calendar_type_box";s:11:"description";s:64:"Get Tempcode for a calendar type 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:19:"get_week_number_for";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:2:{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:18:"The week timestamp";s:11:"phpdoc_name";s:9:"timestamp";}i:1;a:7:{s:4:"name";s:7:"no_year";s:7:"default";s:13:"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 do it contextually to the year, rather than including the year";s:11:"phpdoc_name";s:7:"no_year";}}s:4:"name";s:19:"get_week_number_for";s:11:"description";s:31:"Get the week number for a time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The week number";}}s:22:"date_from_week_of_year";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Year #";s:11:"phpdoc_name";s:4:"year";}i:1;a:5:{s:4:"name";s:4:"week";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Week #";s:11:"phpdoc_name";s:4:"week";}}s:4:"name";s:22:"date_from_week_of_year";s:11:"description";s:203:"Converts year+week to year+month+day. This is really complex. The first week of a year may actually start in December. The first day of the first week is a Monday or a Sunday, depending on configuration.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"Month #,Day #,Year #";}}s:23:"find_periods_recurrence";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The timezone for the event";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:16:"do_timezone_conv";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:65:"Whether the time should be converted to the viewer's own timezone";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:2;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:67:"The year the event starts at. This and the below are in server time";s:11:"phpdoc_name";s:10:"start_year";}i:3;a:5:{s:4:"name";s:11:"start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The month the event starts at";s:11:"phpdoc_name";s:11:"start_month";}i:4;a:5:{s:4:"name";s:9:"start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The day the event starts at";s:11:"phpdoc_name";s:9:"start_day";}i:5;a:6:{s:4:"name";s:23:"start_monthly_spec_type";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:5:{s:4:"name";s:10:"start_hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:51:"The hour the event starts at (null: full day event)";s:11:"phpdoc_name";s:10:"start_hour";}i:7;a:5:{s:4:"name";s:12:"start_minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The minute the event starts at (null: full day event)";s:11:"phpdoc_name";s:12:"start_minute";}i:8;a:5:{s:4:"name";s:8:"end_year";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:9;a:5:{s:4:"name";s:9:"end_month";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:10;a:5:{s:4:"name";s:7:"end_day";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:11;a:6:{s:4:"name";s:21:"end_monthly_spec_type";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:12;a:5:{s:4:"name";s:8:"end_hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:72:"The hour the event ends at (null: not a multi day event / all day event)";s:11:"phpdoc_name";s:8:"end_hour";}i:13;a:5:{s:4:"name";s:10:"end_minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:74:"The minute the event ends at (null: not a multi day event / all day event)";s:11:"phpdoc_name";s:10:"end_minute";}i:14;a:5:{s:4:"name";s:10:"recurrence";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The event recurrence";s:11:"phpdoc_name";s:10:"recurrence";}i:15;a:5:{s:4:"name";s:11:"recurrences";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:16;a:7:{s:4:"name";s:12:"period_start";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:68:"The timestamp that found times must exceed. In user-time (null: now)";s:11:"phpdoc_name";s:12:"period_start";}i:17;a:7:{s:4:"name";s:10:"period_end";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:82:"The timestamp that found times must not exceed. In user-time (null: 20 years time)";s:11:"phpdoc_name";s:10:"period_end";}}s:4:"name";s:23:"find_periods_recurrence";s:11:"description";s:103:"Find a list of pairs specifying the times the event occurs, for 20 years into the future, in user-time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:223:"A list of pairs for period times (timestamps, in user-time). Actually a series of pairs, 'window-bound timestamps' is first pair, then 'true coverage timestamps', then 'true coverage timestamps without timezone conversions'";}}s:26:"_compensate_for_dst_change";a:5:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:12:"Current hour";s:11:"phpdoc_name";s:4:"hour";}i:1;a:5:{s:4:"name";s:6:"minute";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:14:"Current minute";s:11:"phpdoc_name";s:6:"minute";}i:2;a:5:{s:4:"name";s:12:"day_of_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Current day";s:11:"phpdoc_name";s:12:"day_of_month";}i:3;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Current month";s:11:"phpdoc_name";s:5:"month";}i:4;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Current year";s:11:"phpdoc_name";s:4:"year";}i:5;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:6;a:5:{s:4:"name";s:16:"do_timezone_conv";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:84:"Whether the time should be converted to the viewer's own timezone. NOT ACTUALLY USED";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:7;a:5:{s:4:"name";s:7:"dif_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Jump in days that just happened";s:11:"phpdoc_name";s:7:"dif_day";}i:8;a:5:{s:4:"name";s:9:"dif_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"Jump in month that just happened";s:11:"phpdoc_name";s:9:"dif_month";}i:9;a:5:{s:4:"name";s:8:"dif_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Jump in year that just happened";s:11:"phpdoc_name";s:8:"dif_year";}}s:4:"name";s:26:"_compensate_for_dst_change";s:11:"description";s:144:"We have just jumped a UTC-based date (i.e. timezoneless) forward by calendar units, compensate for any DST ramifications in the target timezone.";s:5:"flags";a:0:{}}s:16:"get_days_between";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:19:"initial_start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Start month";s:11:"phpdoc_name";s:19:"initial_start_month";}i:1;a:5:{s:4:"name";s:17:"initial_start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Start day";s:11:"phpdoc_name";s:17:"initial_start_day";}i:2;a:5:{s:4:"name";s:18:"initial_start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"Start year";s:11:"phpdoc_name";s:18:"initial_start_year";}i:3;a:5:{s:4:"name";s:17:"initial_end_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"End month";s:11:"phpdoc_name";s:17:"initial_end_month";}i:4;a:5:{s:4:"name";s:15:"initial_end_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"End day";s:11:"phpdoc_name";s:15:"initial_end_day";}i:5;a:5:{s:4:"name";s:16:"initial_end_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"End year";s:11:"phpdoc_name";s:16:"initial_end_year";}}s:4:"name";s:16:"get_days_between";s:11:"description";s:63:"Get the number of days between two dates (so first+dif=second).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:18:"The number of days";}}s:33:"create_selection_list_event_types";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:48:"The event type to select by default (null: none)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:33:"create_selection_list_event_types";s:11:"description";s:83:"Get a list of event types, taking security into account against the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:30:"regenerate_event_reminder_jobs";a:5:{s:8:"filename";s:20:"sources/calendar.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:"The ID of the event";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Force evaluation even if it's in the past. Only valid for code events";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:30:"regenerate_event_reminder_jobs";s:11:"description";s:118:"Regenerate all the calendar jobs for reminders for next occurance of an event (because the event was added or edited).";s:5:"flags";a:0:{}}s:10:"date_range";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{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:22:"From time in user time";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:5:"?TIME";s:11:"description";s:46:"To time in user time (null: no actual to time)";s:11:"phpdoc_name";s:2:"to";}i:2;a:7:{s:4:"name";s:7:"do_time";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether time is included in this date range";s:11:"phpdoc_name";s:7:"do_time";}i:3;a:7:{s:4:"name";s:14:"force_absolute";s:7:"default";s:13:"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 force absolute display";s:11:"phpdoc_name";s:14:"force_absolute";}i:4;a:7:{s:4:"name";s:8:"timezone";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:"Display timezone";s:11:"phpdoc_name";s:8:"timezone";}}s:4:"name";s:10:"date_range";s:11:"description";s:90:"Create a neatly human-readable date range, using various user-friendly readability tricks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:33:"Textual specially-formatted range";}}s:16:"calendar_matches";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:14:"auth_member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:48:"The member we are running authentication against";s:11:"phpdoc_name";s:14:"auth_member_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:32:"The member to detect matches for";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:8:"restrict";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to restrict only to viewable events for the current member (rarely pass this as false!)";s:11:"phpdoc_name";s:8:"restrict";}i:3;a:5:{s:4:"name";s:12:"period_start";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:100:"The timestamp that found times must exceed. In user-time (null: use find_periods_recurrence default)";s:11:"phpdoc_name";s:12:"period_start";}i:4;a:5:{s:4:"name";s:10:"period_end";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:104:"The timestamp that found times must not exceed. In user-time (null: use find_periods_recurrence default)";s:11:"phpdoc_name";s:10:"period_end";}i:5;a:7:{s:4:"name";s:6:"filter";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 type filter, as used by the calendar module internally (null: none)";s:11:"phpdoc_name";s:6:"filter";}i:6;a:7:{s:4:"name";s:6:"do_rss";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include RSS/iCal events in the results";s:11:"phpdoc_name";s:6:"do_rss";}i:7;a:7:{s:4:"name";s:7:"private";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:87:"Whether to show private events (1) or public events (0) (null: both public and private)";s:11:"phpdoc_name";s:7:"private";}}s:4:"name";s:16:"calendar_matches";s:11:"description";s:55:"Detect calendar matches in a time period, in user-time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A list of events happening, with time details";}}s:28:"create_selection_list_events";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"only_owned";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:64:"Only show events owned by this member (null: no such limitation)";s:11:"phpdoc_name";s:10:"only_owned";}i:1;a:5:{s:4:"name";s:2:"it";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:54:"Event to select by default (null: no specific default)";s:11:"phpdoc_name";s:2:"it";}i:2;a:7:{s:4:"name";s:20:"edit_viewable_events";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether owned public events should be shown";s:11:"phpdoc_name";s:20:"edit_viewable_events";}}s:4:"name";s:28:"create_selection_list_events";s:11:"description";s:29:"Get a list of events to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:16:"detect_conflicts";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:19:{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:34:"The member to detect conflicts for";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:7:"skip_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:129:"The event ID that we are detecting conflicts with (we need this so we don't think we conflict with ourself) (null: not added yet)";s:11:"phpdoc_name";s:7:"skip_id";}i:2;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:83:"The year the event starts at. This and the below are in server time (null: default)";s:11:"phpdoc_name";s:10:"start_year";}i:3;a:5:{s:4:"name";s:11:"start_month";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:5:{s:4:"name";s:9:"start_day";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:6:{s:4:"name";s:23:"start_monthly_spec_type";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:5:{s:4:"name";s:10:"start_hour";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:5:{s:4:"name";s:12:"start_minute";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:5:{s:4:"name";s:8:"end_year";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:9;a:5:{s:4:"name";s:9:"end_month";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:10;a:5:{s:4:"name";s:7:"end_day";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:11;a:6:{s:4:"name";s:21:"end_monthly_spec_type";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:12;a:5:{s:4:"name";s:8:"end_hour";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:13;a:5:{s:4:"name";s:10:"end_minute";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:14;a:5:{s:4:"name";s:10:"recurrence";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The event recurrence";s:11:"phpdoc_name";s:10:"recurrence";}i:15;a:5:{s:4:"name";s:11:"recurrences";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:16;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:14:"The event type";s:11:"phpdoc_name";s:4:"type";}i:17;a:5:{s:4:"name";s:15:"member_calendar";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:32:"The member calendar (null: none)";s:11:"phpdoc_name";s:15:"member_calendar";}i:18;a:5:{s:4:"name";s:10:"scope_type";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:39:"The scope type, DETECT_CONFLICT_SCOPE_*";s:11:"phpdoc_name";s:10:"scope_type";}}s:4:"name";s:16:"detect_conflicts";s:11:"description";s:117:"Detect conflicts with an event at a certain time.NB: Only detects future conflicts, not conflicts on past scheduling.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:40:"Information about conflicts (null: none)";}}s:31:"find_timezone_start_hour_in_utc";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:31:"find_timezone_start_hour_in_utc";s:11:"description";s:38:"Find first hour in day for a timezone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:4:"Hour";}}s:33:"find_timezone_start_minute_in_utc";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:33:"find_timezone_start_minute_in_utc";s:11:"description";s:91:"Find first minute in day for a timezone. Usually 0, but some timezones have 30 min offsets.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:4:"Hour";}}s:29:"find_timezone_end_hour_in_utc";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:29:"find_timezone_end_hour_in_utc";s:11:"description";s:37:"Find last hour in day for a timezone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:4:"Hour";}}s:31:"find_timezone_end_minute_in_utc";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:31:"find_timezone_end_minute_in_utc";s:11:"description";s:91:"Find last minute in day for a timezone. Usually 59, but some timezones have 30 min offsets.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:4:"Hour";}}s:31:"cal_get_start_utctime_for_event";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:131:"The timezone it is in; used to derive $hour and $minute if those are null, such that they start the day correctly for this timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}i:5;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:151:"Hour (null: start hour of day in the timezone expressed as UTC, for whatever day the given midnight day/month/year shifts to after timezone conversion)";s:11:"phpdoc_name";s:4:"hour";}i:6;a:5:{s:4:"name";s:6:"minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:155:"Minute (null: start minute of day in the timezone expressed as UTC, for whatever day the given midnight day/month/year shifts to after timezone conversion)";s:11:"phpdoc_name";s:6:"minute";}i:7;a:5:{s:4:"name";s:22:"show_in_users_timezone";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:189:"Whether the time will be converted to the $timezone instead of UTC *later*. If not then the "UTC time" returned is actually guaged for $timezone, as that's how it was opted to be displayed.";s:11:"phpdoc_name";s:22:"show_in_users_timezone";}}s:4:"name";s:31:"cal_get_start_utctime_for_event";s:11:"description";s:54:"Get the UTC start time for a specified UTC time event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:9:"Timestamp";}}s:29:"cal_get_end_utctime_for_event";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Timezone";s:11:"phpdoc_name";s:8:"timezone";}i:1;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Year";s:11:"phpdoc_name";s:4:"year";}i:2;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Month";s:11:"phpdoc_name";s:5:"month";}i:3;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:3:"Day";s:11:"phpdoc_name";s:3:"day";}i:4;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}i:5;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:149:"Hour (null: end hour of day in the timezone expressed as UTC, for whatever day the given midnight day/month/year shifts to after timezone conversion)";s:11:"phpdoc_name";s:4:"hour";}i:6;a:5:{s:4:"name";s:6:"minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:153:"Minute (null: end minute of day in the timezone expressed as UTC, for whatever day the given midnight day/month/year shifts to after timezone conversion)";s:11:"phpdoc_name";s:6:"minute";}i:7;a:5:{s:4:"name";s:22:"show_in_users_timezone";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:74:"Whether the time should be converted to the viewer's own timezone instead.";s:11:"phpdoc_name";s:22:"show_in_users_timezone";}}s:4:"name";s:29:"cal_get_end_utctime_for_event";s:11:"description";s:52:"Get the UTC end time for a specified UTC time event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:9:"Timestamp";}}s:23:"cal_utctime_to_usertime";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"utc_timestamp";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"Timestamp (proper UTC timestamp, not in user time)";s:11:"phpdoc_name";s:13:"utc_timestamp";}i:1;a:5:{s:4:"name";s:16:"default_timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:161:"The timezone associated with the event (the passed $utc_timestamp should NOT be relative to this timezone, that must be UTC) THIS PARAMETER IS NOT ACTUALLY USED.";s:11:"phpdoc_name";s:16:"default_timezone";}i:2;a:5:{s:4:"name";s:22:"show_in_users_timezone";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether the time should be converted to the viewer's own timezone instead";s:11:"phpdoc_name";s:22:"show_in_users_timezone";}}s:4:"name";s:23:"cal_utctime_to_usertime";s:11:"description";s:79:"Put a timestamp into the correct timezone for being reported onto the calendar.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:17:"Altered timestamp";}}s:19:"detect_happening_at";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:6:{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:34:"The member to detect conflicts for";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:7:"skip_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:129:"The event ID that we are detecting conflicts with (we need this so we don't think we conflict with ourself) (null: not added yet)";s:11:"phpdoc_name";s:7:"skip_id";}i:2;a:5:{s:4:"name";s:9:"our_times";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:59:"List of pairs specifying our happening time (in time order)";s:11:"phpdoc_name";s:9:"our_times";}i:3;a:7:{s:4:"name";s:8:"restrict";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether to restrict only to viewable events for the current member";s:11:"phpdoc_name";s:8:"restrict";}i:4;a:7:{s:4:"name";s:12:"period_start";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:100:"The timestamp that found times must exceed. In user-time (null: use find_periods_recurrence default)";s:11:"phpdoc_name";s:12:"period_start";}i:5;a:7:{s:4:"name";s:10:"period_end";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:104:"The timestamp that found times must not exceed. In user-time (null: use find_periods_recurrence default)";s:11:"phpdoc_name";s:10:"period_end";}}s:4:"name";s:19:"detect_happening_at";s:11:"description";s:55:"Detect conflicts with an event in certain time periods.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A list of events happening, with time details";}}s:26:"find_concrete_day_of_month";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"The concrete year";s:11:"phpdoc_name";s:4:"year";}i:1;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The concrete month";s:11:"phpdoc_name";s:5:"month";}i:2;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The encoded day of month";s:11:"phpdoc_name";s:3:"day";}i:3;a:6:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}i:4;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"The concrete hour";s:11:"phpdoc_name";s:4:"hour";}i:5;a:5:{s:4:"name";s:6:"minute";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The concrete minute";s:11:"phpdoc_name";s:6:"minute";}i:6;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The timezone";s:11:"phpdoc_name";s:8:"timezone";}i:7;a:5:{s:4:"name";s:22:"show_in_users_timezone";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:226:"Whether to do a timezone conversion (NB: unused, as this is before conversion to what dates users see - we are only using timezones here to push the nth weekday appropriately to the correct timezone, due to alignment problems)";s:11:"phpdoc_name";s:22:"show_in_users_timezone";}}s:4:"name";s:26:"find_concrete_day_of_month";s:11:"description";s:75:"Given a specially encoded day of month, work out the real day of the month.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:12:"Concrete day";}}s:17:"find_abstract_day";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"The concrete year";s:11:"phpdoc_name";s:4:"year";}i:1;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The concrete month";s:11:"phpdoc_name";s:5:"month";}i:2;a:5:{s:4:"name";s:12:"day_of_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"The concrete day of month";s:11:"phpdoc_name";s:12:"day_of_month";}i:3;a:5:{s:4:"name";s:17:"monthly_spec_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"In-month specification type";s:11:"phpdoc_name";s:17:"monthly_spec_type";}}s:4:"name";s:17:"find_abstract_day";s:11:"description";s:91:"Given a calendar day of month, work out the day of the month within the specified encoding.";s:5:"flags";a:0:{}s:6:"return";a:3:{s:4:"type";s:7:"integer";s:11:"description";s:12:"Concrete day";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:25:"monthly_spec_type_chooser";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:12:"day_of_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:16:"The concrete day";s:11:"phpdoc_name";s:12:"day_of_month";}i:1;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The concrete month";s:11:"phpdoc_name";s:5:"month";}i:2;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"The concrete year";s:11:"phpdoc_name";s:4:"year";}i:3;a:8:{s:4:"name";s:25:"default_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:35:"Current in-month specification type";s:11:"phpdoc_name";s:25:"default_monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}}s:4:"name";s:25:"monthly_spec_type_chooser";s:11:"description";s:90:"Choose how a recurring monthly event should be encoded.This function is timezone-agnostic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Chooser";}}s:35:"adjust_event_dates_for_a_recurrence";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"A day (Y-m-d)";s:11:"phpdoc_name";s:3:"day";}i:1;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The event row";s:11:"phpdoc_name";s:5:"event";}i:2;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"Timezone of the viewer";s:11:"phpdoc_name";s:8:"timezone";}}s:4:"name";s:35:"adjust_event_dates_for_a_recurrence";s:11:"description";s:60:"Adjust an event row to match a recurrence on a specific day.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"Adjusted event row";}}s:38:"dst_boundary_difference_for_recurrence";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"a_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"'A' year";s:11:"phpdoc_name";s:6:"a_year";}i:1;a:5:{s:4:"name";s:7:"a_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"'A' month";s:11:"phpdoc_name";s:7:"a_month";}i:2;a:5:{s:4:"name";s:5:"a_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"'A' day";s:11:"phpdoc_name";s:5:"a_day";}i:3;a:5:{s:4:"name";s:6:"b_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"'B' year";s:11:"phpdoc_name";s:6:"b_year";}i:4;a:5:{s:4:"name";s:7:"b_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"'B' month";s:11:"phpdoc_name";s:7:"b_month";}i:5;a:5:{s:4:"name";s:5:"b_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"'B' day";s:11:"phpdoc_name";s:5:"b_day";}i:6;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The timezone";s:11:"phpdoc_name";s:8:"timezone";}}s:4:"name";s:38:"dst_boundary_difference_for_recurrence";s:11:"description";s:74:"An event moved from 'a' to 'b' may have an hour/minute shift due to a DST.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"A pair: shift in hours, shift in minutes";}}s:30:"resolve_complex_event_end_date";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:30:"resolve_complex_event_end_date";s:11:"description";s:378:"An event may have a complex end date (e.g. 4th Friday).We want to fix it to a calendar day for the recurrence (which we assume is already fixed into the event row).We also want to define it (trick it) to be stated in the same month of the start date, even if that means the days will exceed the number of days in a month.This will allow us to do shifts around in calendar-space.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";}}s:26:"find_event_start_timestamp";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:26:"find_event_start_timestamp";s:11:"description";s:39:"Find the timestamp of an event's start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:67:"A pair: timestamp, timestamp considering the viewing users timezone";}}s:24:"find_event_end_timestamp";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:24:"find_event_end_timestamp";s:11:"description";s:37:"Find the timestamp of an event's end.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:67:"A pair: timestamp, timestamp considering the viewing users timezone";}}s:37:"start_find_concrete_day_of_month_wrap";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:37:"start_find_concrete_day_of_month_wrap";s:11:"description";s:56:"Find the concrete start day of a month for an event row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:12:"Concrete day";}}s:35:"end_find_concrete_day_of_month_wrap";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"event";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Event row";s:11:"phpdoc_name";s:5:"event";}}s:4:"name";s:35:"end_find_concrete_day_of_month_wrap";s:11:"description";s:54:"Find the concrete end day of a month for an event row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:12:"Concrete day";}}s:29:"get_calendar_event_first_date";a:6:{s:8:"filename";s:20:"sources/calendar.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:8:"timezone";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:1;a:5:{s:4:"name";s:16:"do_timezone_conv";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:65:"Whether the time should be converted to the viewer's own timezone";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:2;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:67:"The year the event starts at. This and the below are in server time";s:11:"phpdoc_name";s:10:"start_year";}i:3;a:5:{s:4:"name";s:11:"start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The month the event starts at";s:11:"phpdoc_name";s:11:"start_month";}i:4;a:5:{s:4:"name";s:9:"start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The day the event starts at";s:11:"phpdoc_name";s:9:"start_day";}i:5;a:6:{s:4:"name";s:23:"start_monthly_spec_type";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:5:{s:4:"name";s:10:"start_hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The hour the event starts at";s:11:"phpdoc_name";s:10:"start_hour";}i:7;a:5:{s:4:"name";s:12:"start_minute";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The minute the event starts at";s:11:"phpdoc_name";s:12:"start_minute";}i:8;a:5:{s:4:"name";s:8:"end_year";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:9;a:5:{s:4:"name";s:9:"end_month";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:10;a:5:{s:4:"name";s:7:"end_day";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:11;a:6:{s:4:"name";s:21:"end_monthly_spec_type";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:12;a:5:{s:4:"name";s:8:"end_hour";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:72:"The hour the event ends at (null: not a multi day event / all day event)";s:11:"phpdoc_name";s:8:"end_hour";}i:13;a:5:{s:4:"name";s:10:"end_minute";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:74:"The minute the event ends at (null: not a multi day event / all day event)";s:11:"phpdoc_name";s:10:"end_minute";}i:14;a:5:{s:4:"name";s:10:"recurrence";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The event recurrence";s:11:"phpdoc_name";s:10:"recurrence";}i:15;a:5:{s:4:"name";s:11:"recurrences";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:16;a:7:{s:4:"name";s:11:"force_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:62:"Whether to forcibly get the first recurrence, not a future one";s:11:"phpdoc_name";s:11:"force_first";}}s:4:"name";s:29:"get_calendar_event_first_date";s:11:"description";s:107:"Find details of when an event happens. Preferably the next recurrence, but if it is in the past, the first.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:59:"A tuple: Written date [range], from timestamp, to timestamp";}}s:18:"add_calendar_event";a:6:{s:8:"filename";s:21:"sources/calendar2.php";s:10:"parameters";a:35:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:14:"The event type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:10:"recurrence";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:112:"The recurrence code (set to 'none' for no recurrences: blank means infinite and will basically time-out Composr)";s:11:"phpdoc_name";s:10:"recurrence";}i:2;a:5:{s:4:"name";s:11:"recurrences";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:3;a:5:{s:4:"name";s:15:"seg_recurrences";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:4;a:5:{s:4:"name";s:5:"title";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:5;a:5:{s:4:"name";s:7:"content";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:6;a:6:{s:4:"name";s:8:"priority";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:7;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The year the event starts at";s:11:"phpdoc_name";s:10:"start_year";}i:8;a:5:{s:4:"name";s:11:"start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The month the event starts at";s:11:"phpdoc_name";s:11:"start_month";}i:9;a:5:{s:4:"name";s:9:"start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The day the event starts at";s:11:"phpdoc_name";s:9:"start_day";}i:10;a:6:{s:4:"name";s:23:"start_monthly_spec_type";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:11;a:5:{s:4:"name";s:10:"start_hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The hour the event starts at";s:11:"phpdoc_name";s:10:"start_hour";}i:12;a:5:{s:4:"name";s:12:"start_minute";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The minute the event starts at";s:11:"phpdoc_name";s:12:"start_minute";}i:13;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:14;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:15;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:16;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:17;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:18;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:19;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:20;a:7:{s:4:"name";s:16:"do_timezone_conv";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 time should be presented in the viewer's own timezone";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:21;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:22;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:36:"Whether the event has been validated";s:11:"phpdoc_name";s:9:"validated";}i:23;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:6:"BINARY";s:11:"description";s:30:"Whether the event may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:24;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:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:25;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:6:"BINARY";s:11:"description";s:36:"Whether the event may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:26;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:"Hidden notes pertaining to the event";s:11:"phpdoc_name";s:5:"notes";}i:27;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:42:"The event submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:28;a:7:{s:4:"name";s:5:"views";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:26:"The number of views so far";s:11:"phpdoc_name";s:5:"views";}i:29;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:30;a:7:{s:4:"name";s:9:"edit_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:27:"The edit time (null: never)";s:11:"phpdoc_name";s:9:"edit_time";}i:31;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:32;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:33;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:34;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:18:"add_calendar_event";s:11:"description";s:21:"Add a calendar event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"The ID of the event";}}s:19:"edit_calendar_event";a:5:{s:8:"filename";s:21:"sources/calendar2.php";s:10:"parameters";a:36:{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:"The ID of the event";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"type";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:5:{s:4:"name";s:10:"recurrence";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:3;a:5:{s:4:"name";s:11:"recurrences";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:4;a:5:{s:4:"name";s:15:"seg_recurrences";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:5;a:5:{s:4:"name";s:5:"title";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:6;a:5:{s:4:"name";s:7:"content";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:7;a:6:{s:4:"name";s:8:"priority";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:8;a:5:{s:4:"name";s:10:"start_year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The year the event starts at";s:11:"phpdoc_name";s:10:"start_year";}i:9;a:5:{s:4:"name";s:11:"start_month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The month the event starts at";s:11:"phpdoc_name";s:11:"start_month";}i:10;a:5:{s:4:"name";s:9:"start_day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The day the event starts at";s:11:"phpdoc_name";s:9:"start_day";}i:11;a:6:{s:4:"name";s:23:"start_monthly_spec_type";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:12;a:5:{s:4:"name";s:10:"start_hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The hour the event starts at";s:11:"phpdoc_name";s:10:"start_hour";}i:13;a:5:{s:4:"name";s:12:"start_minute";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The minute the event starts at";s:11:"phpdoc_name";s:12:"start_minute";}i:14;a:5:{s:4:"name";s:8:"end_year";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:5:{s:4:"name";s:9:"end_month";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:5:{s:4:"name";s:7:"end_day";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:6:{s:4:"name";s:21:"end_monthly_spec_type";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:5:{s:4:"name";s:8:"end_hour";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:5:{s:4:"name";s:10:"end_minute";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:5:{s:4:"name";s:8:"timezone";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:5:{s:4:"name";s:16:"do_timezone_conv";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:5:{s:4:"name";s:15:"member_calendar";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:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:24;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:25;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:57:"Whether the event has been validated (null: don't change)";s:11:"phpdoc_name";s:9:"validated";}i:26;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the event may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:27;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:28;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the event may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:29;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"Hidden notes pertaining to the event";s:11:"phpdoc_name";s:5:"notes";}i:30;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:31;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:32;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:33;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:34;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:35;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:19:"edit_calendar_event";s:11:"description";s:22:"Edit a calendar event.";s:5:"flags";a:0:{}}s:21:"delete_calendar_event";a:5:{s:8:"filename";s:21:"sources/calendar2.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:19:"The ID of the event";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:21:"delete_calendar_event";s:11:"description";s:24:"Delete a calendar event.";s:5:"flags";a:0:{}}s:14:"add_event_type";a:6:{s:8:"filename";s:21:"sources/calendar2.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:10:"SHORT_TEXT";s:11:"description";s:27:"The title of the event type";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"logo";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The theme image code";s:11:"phpdoc_name";s:4:"logo";}i:2;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:14:"add_event_type";s:11:"description";s:26:"Add a calendar event type.";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 the event type";}}s:15:"edit_event_type";a:5:{s:8:"filename";s:21:"sources/calendar2.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:9:"AUTO_LINK";s:11:"description";s:24:"The ID of the event type";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:27:"The title of the event type";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"logo";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The theme image code";s:11:"phpdoc_name";s:4:"logo";}i:3;a:5:{s:4:"name";s:13:"external_feed";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:"edit_event_type";s:11:"description";s:27:"Edit a calendar event type.";s:5:"flags";a:0:{}}s:17:"delete_event_type";a:5:{s:8:"filename";s:21:"sources/calendar2.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:24:"The ID of the event type";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"delete_event_type";s:11:"description";s:29:"Delete a calendar event type.";s:5:"flags";a:0:{}}s:11:"ical_escape";a:6:{s:8:"filename";s:25:"sources/calendar_ical.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:5:"Input";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:11:"ical_escape";s:11:"description";s:40:"Escapes a string as per the ical format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Output";}}s:11:"output_ical";a:5:{s:8:"filename";s:25:"sources/calendar_ical.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"output_ical";s:11:"description";s:53:"Outputs the logged-in member's calendar view to ical.";s:5:"flags";a:0:{}}s:11:"ical_import";a:5:{s:8:"filename";s:25:"sources/calendar_ical.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_name";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:9:"File path";s:11:"phpdoc_name";s:9:"file_name";}}s:4:"name";s:11:"ical_import";s:11:"description";s:47:"Import ical events to members's event calendar.";s:5:"flags";a:0:{}}s:19:"get_event_data_ical";a:6:{s:8:"filename";s:25:"sources/calendar_ical.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"calendar_nodes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"Array of given event details";s:11:"phpdoc_name";s:14:"calendar_nodes";}}s:4:"name";s:19:"get_event_data_ical";s:11:"description";s:57:"Get array of an events from node of an imported ical file";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"Returns array of event details for mapping";}}s:13:"init__captcha";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__captcha";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:14:"captcha_script";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"captcha_script";s:11:"description";s:45:"Outputs and stores information for a CAPTCHA.";s:5:"flags";a:0:{}}s:18:"form_input_captcha";a:6:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"form_input_captcha";s:11:"description";s:45:"Get a captcha (aka security code) form field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The field";}}s:11:"use_captcha";a:6:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"use_captcha";s:11:"description";s:113:"Find whether captcha (the security image) should be used if preferred (making this call assumes it is preferred).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether captcha is used";}}s:16:"generate_captcha";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"generate_captcha";s:11:"description";s:25:"Generate a CAPTCHA image.";s:5:"flags";a:0:{}}s:15:"enforce_captcha";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:19:"regenerate_on_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to possibly regenerate upon error.";s:11:"phpdoc_name";s:19:"regenerate_on_error";}}s:4:"name";s:15:"enforce_captcha";s:11:"description";s:75:"Calling this assumes captcha was needed. Checks that it was done correctly.";s:5:"flags";a:0:{}}s:13:"check_captcha";a:6:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"code_entered";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"CAPTCHA entered.";s:11:"phpdoc_name";s:12:"code_entered";}i:1;a:7:{s:4:"name";s:19:"regenerate_on_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to possibly regenerate upon error.";s:11:"phpdoc_name";s:19:"regenerate_on_error";}}s:4:"name";s:13:"check_captcha";s:11:"description";s:17:"Checks a CAPTCHA.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether it is valid for the current session.";}}s:17:"_cleanout_captcha";a:5:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_cleanout_captcha";s:11:"description";s:23:"Delete current CAPTCHA.";s:5:"flags";a:0:{}}s:18:"captcha_ajax_check";a:6:{s:8:"filename";s:19:"sources/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"captcha_ajax_check";s:11:"description";s:44:"Get code to do an AJAX check of the CAPTCHA.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"JavaScript code.";}}s:16:"init__catalogues";a:5:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__catalogues";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"load_catalogue_row";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:2:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}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:72:"Whether to return null if we can't find it (as opposed to a fatal error)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:18:"load_catalogue_row";s:11:"description";s:20:"Get a catalogue row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:69:"Catalogue row (null: could not find it, and $fail_ok was set to true)";}}s:26:"render_catalogue_entry_box";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:6:{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:13:"Catalogue row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:26:"render_catalogue_entry_box";s:11:"description";s:23:"Render a catalogue box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The catalogue box";}}s:29:"render_catalogue_category_box";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:7:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:29:"render_catalogue_category_box";s:11:"description";s:69:"Get Tempcode for a catalogue category 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:20:"render_catalogue_box";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{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:13:"Catalogue row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:20:"render_catalogue_box";s:11:"description";s:23:"Render a catalogue box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The catalogue box";}}s:33:"count_catalogue_category_children";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:60:"The ID of the category for which count details are collected";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:33:"count_catalogue_category_children";s:11:"description";s:83:"Count the entries and subcategories underneath the specified category, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:313:"The number of entries is returned in $output['num_entries'], and the number of subcategories is returned in $output['num_children'], the (possibly recursive) number of subcategories in $output['num_children_children'], and the (possibly recursive) number of entries is returned in $output['num_entries_children'].";}}s:39:"render_catalogue_category_entry_buildup";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:86:"The ID of the category for which the entries are being collected (null: no limitation)";s:11:"phpdoc_name";s:11:"category_id";}i:1;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";}i:2;a:5:{s:4:"name";s:9:"catalogue";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:70:"A database row of the catalogue we are working with (null: read it in)";s:11:"phpdoc_name";s:9:"catalogue";}i:3;a:6:{s:4:"name";s:9:"view_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The view type we're doing";s:11:"phpdoc_name";s:9:"view_type";s:3:"set";s:20:"PAGE SEARCH CATEGORY";}i:4;a:5:{s:4:"name";s:7:"tpl_set";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The template set we are rendering this category using";s:11:"phpdoc_name";s:7:"tpl_set";}i:5;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:88:"The maximum number of entries to show on a single page of this this category (null: all)";s:11:"phpdoc_name";s:3:"max";}i:6;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:40:"The entry number to start at (null: all)";s:11:"phpdoc_name";s:5:"start";}i:7;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:143:"The entries to show, may be from other categories. Can either be SQL fragment (produced from Selectcode?), or array (null: use $start and $max)";s:11:"phpdoc_name";s:6:"select";}i:8;a:5:{s:4:"name";s:4:"root";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:61:"The virtual root for display of this category (null: default)";s:11:"phpdoc_name";s:4:"root";}i:9;a:7:{s:4:"name";s:12:"display_type";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:54:"The display type to use (null: lookup from $catalogue)";s:11:"phpdoc_name";s:12:"display_type";}i:10;a:7:{s:4:"name";s:10:"do_sorting";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to perform sorting";s:11:"phpdoc_name";s:10:"do_sorting";}i:11;a:7:{s:4:"name";s:7:"entries";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:49:"A list of entry rows (null: select them normally)";s:11:"phpdoc_name";s:7:"entries";}i:12;a:7:{s:4:"name";s:6:"filter";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:34:"Filtercode to apply (blank: none).";s:11:"phpdoc_name";s:6:"filter";}i:13;a:7:{s:4:"name";s:19:"order_by_high_level";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:"Orderer (null: read from environment)";s:11:"phpdoc_name";s:19:"order_by_high_level";}i:14;a:7:{s:4:"name";s:14:"ordering_param";s:7:"default";s:4:"sort";s:11:"default_raw";s:6:"'sort'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:90:"Environment param used for ordering. You should pass in $order_by_high_level if it is set.";s:11:"phpdoc_name";s:14:"ordering_param";}i:15;a:7:{s:4:"name";s:17:"viewing_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:38:"Viewing member ID (null: current user)";s:11:"phpdoc_name";s:17:"viewing_member_id";}}s:4:"name";s:39:"render_catalogue_category_entry_buildup";s:11:"description";s:67:"Get an ordered array of all the entries in the specified catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:182:"An array containing our built up entries (renderable Tempcode), our sorting interface, and our entries (entry records from database, with an additional 'map' field), and the max rows";}}s:22:"_catalogues_filtercode";a:6:{s:8:"filename";s:22:"sources/catalogues.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"Name of the catalogue (null: unknown; reduces performance)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:10:"filter_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:10:"filter_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:22:"_catalogues_filtercode";s:11:"description";s:74:"Make sure we are doing necessary join to be able to access the given field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:21:"get_catalogue_entries";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:11:{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:21:"Name of the catalogue";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:86:"The ID of the category for which the entries are being collected (null: no limitation)";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:121:"The maximum number of entries to show on a single page of this this category (ignored if $select is not null) (null: all)";s:11:"phpdoc_name";s:3:"max";}i:3;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:73:"The entry number to start at (ignored if $select is not null) (null: all)";s:11:"phpdoc_name";s:5:"start";}i:4;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:143:"The entries to show, may be from other categories. Can either be SQL fragment (produced from Selectcode?), or array (null: use $start and $max)";s:11:"phpdoc_name";s:6:"select";}i:5;a:5:{s:4:"name";s:10:"do_sorting";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to perform sorting";s:11:"phpdoc_name";s:10:"do_sorting";}i:6;a:5:{s:4:"name";s:10:"filtercode";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:197:"List of filters to apply (null: none). Each filter is a triple: ORd comparison key(s) [separated by pipe symbols], comparison type (one of '<', '>', '<=', '>=', '=', '~=', or '~'), comparison value";s:11:"phpdoc_name";s:10:"filtercode";}i:7;a:5:{s:4:"name";s:8:"order_by";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:7:"Orderer";s:11:"phpdoc_name";s:8:"order_by";}i:8;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:9;a:7:{s:4:"name";s:11:"extra_where";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 WHERE SQL to add on to query";s:11:"phpdoc_name";s:11:"extra_where";}i:10;a:7:{s:4:"name";s:17:"viewing_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:38:"Viewing member ID (null: current user)";s:11:"phpdoc_name";s:17:"viewing_member_id";}}s:4:"name";s:21:"get_catalogue_entries";s:11:"description";s:54:"Fetch entries from database, with sorting if possible.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:78:"A tuple: whether sorting was done, number of entries returned, list of entries";}}s:29:"catalogue_entries_manual_sort";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:26:"Fields array for catalogue";s:11:"phpdoc_name";s:6:"fields";}i:1;a:5:{s:4:"name";s:7:"entries";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:30:"Entries to sort (by reference)";s:11:"phpdoc_name";s:7:"entries";}i:2;a:5:{s:4:"name";s:8:"order_by";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"What to sort by";s:11:"phpdoc_name";s:8:"order_by";}i:3;a:5:{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:4:"name";s:29:"catalogue_entries_manual_sort";s:11:"description";s:37:"Manually sort some catalogue entries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"Entries";}}s:23:"get_catalogue_entry_map";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:5:"entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:47:"A database row of the entry we are working with";s:11:"phpdoc_name";s:5:"entry";}i:1;a:5:{s:4:"name";s:9:"catalogue";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:75:"A database row of the catalogue we are working with (null: read it in here)";s:11:"phpdoc_name";s:9:"catalogue";}i:2;a:6:{s:4:"name";s:9:"view_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The view type we're doing";s:11:"phpdoc_name";s:9:"view_type";s:3:"set";s:20:"PAGE SEARCH CATEGORY";}i:3;a:5:{s:4:"name";s:7:"tpl_set";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The template set we are rendering this category using";s:11:"phpdoc_name";s:7:"tpl_set";}i:4;a:7:{s:4:"name";s:4:"root";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:58:"The virtual root for display of this category (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:6:"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:69:"The database rows for the fields for this catalogue (null: find them)";s:11:"phpdoc_name";s:6:"fields";}i:6;a:7:{s:4:"name";s:11:"only_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:92:"A list of fields (sequence numbers) that we are limiting ourselves to (null: get ALL fields)";s:11:"phpdoc_name";s:11:"only_fields";}i:7;a:7:{s:4:"name";s:16:"feedback_details";s:7:"default";s:13:"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 grab the feedback details";s:11:"phpdoc_name";s:16:"feedback_details";}i:8;a:7:{s:4:"name";s:19:"breadcrumbs_details";s:7:"default";s:13:"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 grab the breadcrumbs details";s:11:"phpdoc_name";s:19:"breadcrumbs_details";}i:9;a:7:{s:4:"name";s:8:"order_by";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:36:"Field index to order by (null: none)";s:11:"phpdoc_name";s:8:"order_by";}i:10;a:7:{s:4:"name";s:12:"_breadcrumbs";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:6:"?array";s:11:"description";s:48:"Write breadcrumbs into here (null: don't bother)";s:11:"phpdoc_name";s:12:"_breadcrumbs";}i:11;a:7:{s:4:"name";s:14:"force_view_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:28:"Whether to render everything";s:11:"phpdoc_name";s:14:"force_view_all";}}s:4:"name";s:23:"get_catalogue_entry_map";s:11:"description";s:44:"Get a map of the fields for the given entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:230:"A map of information relating to the entry. The map contains 'FIELDS' (Tempcode for all accumulated fields), 'FIELD_x' (for each field x applying to the entry), STAFF_DETAILS, COMMENT_DETAILS, RATING_DETAILS, VIEW_URL, BREADCRUMBS";}}s:32:"get_catalogue_entry_field_values";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:60:"The catalogue name we are getting an entry in (null: lookup)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"The ID of the entry we are getting OR the row";s:11:"phpdoc_name";s:8:"entry_id";}i:2;a:7:{s:4:"name";s:11:"only_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:73:"A list of fields that we are limiting ourselves to (null: get ALL fields)";s:11:"phpdoc_name";s:11:"only_fields";}i:3;a:7:{s:4:"name";s:6:"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:69:"The database rows for the fields for this catalogue (null: find them)";s:11:"phpdoc_name";s:6:"fields";}i:4;a:7:{s:4:"name";s:13:"natural_order";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:177:"Whether to order the fields in their natural database order. This is only used for shopping catalogues as a defence against webmaster field reordering and not a strong guarantee";s:11:"phpdoc_name";s:13:"natural_order";}i:5;a:8:{s:4:"name";s:9:"view_type";s:7:"default";s:4:"PAGE";s:11:"default_raw";s:6:"'PAGE'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The view type we're doing";s:11:"phpdoc_name";s:9:"view_type";s:3:"set";s:20:"PAGE SEARCH CATEGORY";}}s:4:"name";s:32:"get_catalogue_entry_field_values";s:11:"description";s:72:"Get the values for the specified fields, for the stated catalogue entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:206:"A list of maps (each field for the entry gets a map), where each map contains 'effective_value' (the value for the field). Some maps get additional fields (effective_value_pure), depending on the field type";}}s:30:"_resolve_catalogue_entry_field";a:5:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The field row";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"The ID of the entry we are getting OR the row";s:11:"phpdoc_name";s:8:"entry_id";}i:2;a:5:{s:4:"name";s:14:"only_field_ids";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:76:"A list of field IDs that we are limiting ourselves to (null: get ALL fields)";s:11:"phpdoc_name";s:14:"only_field_ids";}i:3;a:5:{s:4:"name";s:6:"target";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:25:"Save the result into here";s:11:"phpdoc_name";s:6:"target";}}s:4:"name";s:30:"_resolve_catalogue_entry_field";s:11:"description";s:57:"Get the standardised details for a catalogue entry field.";s:5:"flags";a:0:{}}s:26:"_get_catalogue_entry_field";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"field_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the field we are getting";s:11:"phpdoc_name";s:8:"field_id";}i:1;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:49:"The ID of the entry we are getting for OR the row";s:11:"phpdoc_name";s:8:"entry_id";}i:2;a:8:{s:4:"name";s:4:"type";s:7:"default";s:5:"short";s:11:"default_raw";s:7:"'short'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The type of field";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:10:"short long";}i:3;a:7:{s:4:"name";s:14:"only_field_ids";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:76:"A list of field IDs that we are limiting ourselves to (null: get ALL fields)";s:11:"phpdoc_name";s:14:"only_field_ids";}}s:4:"name";s:26:"_get_catalogue_entry_field";s:11:"description";s:70:"Get the value for the specified field, for the stated catalogue entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:25:"The row (null: not found)";}}s:32:"create_selection_list_catalogues";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{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:66:"The name of the currently selected catalogue (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:24:"prefer_ones_with_entries";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"If there are too many to list prefer to get ones with entries rather than just the newest";s:11:"phpdoc_name";s:24:"prefer_ones_with_entries";}i:2;a:7:{s:4:"name";s:16:"only_submittable";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether to only show catalogues that can be submitted to";s:11:"phpdoc_name";s:16:"only_submittable";}i:3;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:32:"create_selection_list_catalogues";s:11:"description";s:56:"Get a nice, formatted, XHTML list of all the catalogues.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"Catalogue selection list";}}s:45:"create_selection_list_catalogue_category_tree";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:41:"The currently selected entry (null: none)";s:11:"phpdoc_name";s:2:"it";}i:2;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:3;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to make the list elements store comma-separated child lists instead of IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}}s:4:"name";s:45:"create_selection_list_catalogue_category_tree";s:11:"description";s:128:"Get a nice, formatted XHTML list extending from the root, and showing all subcategories, and their subcategories (ad infinitum).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The list of categories";}}s:27:"get_catalogue_category_tree";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:8:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:74:"The category being at the root of our recursion (null: true root category)";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:7:{s:4:"name";s:11:"breadcrumbs";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:49:"The breadcrumbs up to this point in the recursion";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:3;a:7:{s:4:"name";s:16:"category_details";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:198:"The category details of the $category_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs details";s:11:"phpdoc_name";s:16:"category_details";}i:4;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:5;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:6;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to make the list elements store comma-separated child lists instead of IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:7;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 collect entry counts with our tree information";s:11:"phpdoc_name";s:8:"do_stats";}}s:4:"name";s:27:"get_catalogue_category_tree";s:11:"description";s:137:"Get a list of maps containing all the subcategories, and path information, of the specified category - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:232:"A list of maps for all subcategories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (path to the category, including the categories own title), and 'entries_count' (the number of entries in the category).";}}s:44:"create_selection_list_catalogue_entries_tree";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:4:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:50:"The currently selected entry (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:2;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:10:"?AUTO_LINK";s:11:"description";s:60:"Only show entries submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}i:3;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:44:"create_selection_list_catalogue_entries_tree";s:11:"description";s:81:"Get a nice, formatted XHTML list of entries, in catalogue category tree structure";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The list of entries";}}s:26:"get_catalogue_entries_tree";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:7:{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:18:"The catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:60:"Only show entries submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}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:65:"The category being at the root of our recursion (null: true root)";s:11:"phpdoc_name";s:11:"category_id";}i:3;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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:4;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:8:"?ID_TEXT";s:11:"description";s:184:"The name of the $category_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:5:"title";}i:5;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:6;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:26:"get_catalogue_entries_tree";s:11:"description";s:144:"Get a list of maps containing all the catalogue entries, and path information, under the specified category - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:178:"A list of maps for all categories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (path to the category, including the categories own title), and more.";}}s:30:"catalogue_category_breadcrumbs";a:6:{s:8:"filename";s:22:"sources/catalogues.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:9:"AUTO_LINK";s:11:"description";s:31:"The category we are finding for";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:7:{s:4:"name";s:4:"root";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:42:"The root of the tree (null: the true root)";s:11:"phpdoc_name";s:4:"root";}i:2;a:7:{s:4:"name";s:18:"no_link_for_me_sir";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether to include category links at this level (the recursed levels will always contain links - the top level is optional, hence this parameter)";s:11:"phpdoc_name";s:18:"no_link_for_me_sir";}i:3;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}}s:4:"name";s:30:"catalogue_category_breadcrumbs";s:11:"description";s:98:"Get a formatted XHTML string of the route back to the specified root, from the specified category.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The breadcrumbs";}}s:22:"is_ecommerce_catalogue";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:7:{s:4:"name";s:9:"catalogue";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:29:"Catalogue row (null: look up)";s:11:"phpdoc_name";s:9:"catalogue";}}s:4:"name";s:22:"is_ecommerce_catalogue";s:11:"description";s:53:"Check the current catalogue is an ecommerce catalogue";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Status of ecommerce catalogue check";}}s:28:"is_ecommerce_catalogue_entry";a:6:{s:8:"filename";s:22:"sources/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"Entry ID";s:11:"phpdoc_name";s:8:"entry_id";}}s:4:"name";s:28:"is_ecommerce_catalogue_entry";s:11:"description";s:52:"Check selected entry is an ecommerce catalogue entry";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"Status of entry type check";}}s:29:"render_catalogue_entry_screen";a:6:{s:8:"filename";s:22:"sources/catalogues.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:8:"Entry ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:8:"no_title";s:7:"default";s:13:"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 skip rendering a title";s:11:"phpdoc_name";s:8:"no_title";}i:2;a:7:{s:4:"name";s:20:"attach_to_url_filter";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}}s:4:"name";s:29:"render_catalogue_entry_screen";s:11:"description";s:25:"Display a catalogue entry";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"Tempcode interface to display an entry";}}s:17:"init__catalogues2";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__catalogues2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"catalogue_to_tree";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:14:"Catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:17:"catalogue_to_tree";s:11:"description";s:50:"Converts a non-tree catalogue to a tree catalogue.";s:5:"flags";a:0:{}}s:19:"catalogue_from_tree";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:14:"Catalogue name";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:19:"catalogue_from_tree";s:11:"description";s:52:"Converts a non-tree catalogue from a tree catalogue.";s:5:"flags";a:0:{}}s:20:"actual_add_catalogue";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The codename of the catalogue";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:65:"The title of the catalogue (either language string map or string)";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:52:"A description (either language string map or string)";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:12:"display_type";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:5:{s:4:"name";s:7:"is_tree";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:84:"Whether the catalogue uses a tree system (as opposed to mere categories in an index)";s:11:"phpdoc_name";s:7:"is_tree";}i:5;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:41:"Hidden notes pertaining to this catalogue";s:11:"phpdoc_name";s:5:"notes";}i:6;a:5:{s:4:"name";s:13:"submit_points";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:61:"How many points a member gets by submitting to this 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";}i:10;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:11;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:20:"actual_add_catalogue";s:11:"description";s:47:"Add a catalogue using all the specified values.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:26:"actual_add_catalogue_field";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:6:"c_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The codename of the catalogue the field is for";s:11:"phpdoc_name";s:6:"c_name";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:60:"The name of the field (either language string map or string)";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:5:"mixed";s:11:"description";s:52:"A description (either language string map or string)";s:11:"phpdoc_name";s:11:"description";}i:3;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:21:"The type of the field";s:11:"phpdoc_name";s:4:"type";}i:4;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:109:"The field order (the field order determines what order the fields are displayed within an entry) (null: next)";s:11:"phpdoc_name";s:5:"order";}i:5;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:46:"Whether this field defines the catalogue order";s:11:"phpdoc_name";s:13:"defines_order";}i:6;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 this is a visible field";s:11:"phpdoc_name";s:7:"visible";}i:7;a:7:{s:4:"name";s:10:"searchable";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 usable as a search key";s:11:"phpdoc_name";s:10:"searchable";}i:8;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:31:"The default value for the field";s:11:"phpdoc_name";s:7:"default";}i:9;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:30:"Whether this field is required";s:11:"phpdoc_name";s:8:"required";}i:10;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:11;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:12;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";}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:46:"Force this ID (null: auto-increment as normal)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:26:"actual_add_catalogue_field";s:11:"description";s:92:"Add a field to the specified catalogue, without disturbing any other data in that catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"Field ID";}}s:21:"actual_edit_catalogue";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:12:{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:33:"The current name of the catalogue";s:11:"phpdoc_name";s:8:"old_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:29:"The new name of the catalogue";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:5:"title";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:3;a:5:{s:4:"name";s:11:"description";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:4;a:5:{s:4:"name";s:12:"display_type";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:5;a:5:{s:4:"name";s:5:"notes";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:5:{s:4:"name";s:13:"submit_points";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:5:{s:4:"name";s:9:"ecommerce";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:6:{s:4:"name";s:17:"send_view_reports";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:5:{s:4:"name";s:19:"default_review_freq";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";}i:10;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:11;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:21:"actual_edit_catalogue";s:11:"description";s:17:"Edit a catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:23:"actual_delete_catalogue";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:7:"ID_TEXT";s:11:"description";s:25:"The name of the catalogue";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:23:"actual_delete_catalogue";s:11:"description";s:19:"Delete a catalogue.";s:5:"flags";a:0:{}}s:27:"actual_edit_catalogue_field";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{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:"The ID of the field";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:6:"c_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:6:"c_name";}i:2;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:43:"The name of the field (null: do not change)";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:47:"Description for the field (null: do not change)";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:96:"The field order (the field order determines what order the fields are displayed within an entry)";s:11:"phpdoc_name";s:5:"order";}i:5;a:5:{s:4:"name";s:13:"defines_order";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:6;a:5:{s:4:"name";s:7:"visible";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:7:"visible";}i:7;a:5:{s:4:"name";s:10:"searchable";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"Whether the field is usable as a search key";s:11:"phpdoc_name";s:10:"searchable";}i:8;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:31:"The default value for the field";s:11:"phpdoc_name";s:7:"default";}i:9;a:5:{s:4:"name";s:8:"required";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:10;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:11;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:12;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";}i:13;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:36:"The field type (null: do not change)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:27:"actual_edit_catalogue_field";s:11:"description";s:23:"Edit a catalogue field.";s:5:"flags";a:0:{}}s:29:"actual_delete_catalogue_field";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:19:"The ID of the field";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:29:"actual_delete_catalogue_field";s:11:"description";s:25:"Delete a catalogue field.";s:5:"flags";a:0:{}}s:29:"actual_add_catalogue_category";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{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:48:"The codename of the catalogue the category is in";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:65:"The title of this category (either language string map or string)";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:52:"A description (either language string map or string)";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:40:"Hidden notes pertaining to this category";s:11:"phpdoc_name";s:5:"notes";}i:4;a:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:81:"The ID of this categories parent (null: a root category, or not a tree catalogue)";s:11:"phpdoc_name";s:9:"parent_id";}i:5;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:55:"The representative image for the category (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:6;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:7;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:8;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:9;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:27:"The order (null: automatic)";s:11:"phpdoc_name";s:5:"order";}i:10;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:11;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:12;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:13;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:29:"actual_add_catalogue_category";s:11:"description";s:24:"Add a catalogue category";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:26:"The ID of the new category";}}s:31:"rebuild_catalogue_cat_treecache";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"rebuild_catalogue_cat_treecache";s:11:"description";s:72:"Re-build the efficient catalogue category tree structure ancestry cache.";s:5:"flags";a:0:{}}s:32:"store_in_catalogue_cat_treecache";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:22:"The ID of the category";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of the parent category (null: no parent)";s:11:"phpdoc_name";s:9:"parent_id";}i:2;a:7:{s:4:"name";s:13:"cleanup_first";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:74:"Whether to delete any possible pre-existing records for the category first";s:11:"phpdoc_name";s:13:"cleanup_first";}}s:4:"name";s:32:"store_in_catalogue_cat_treecache";s:11:"description";s:51:"Update the treecache for a catalogue category node.";s:5:"flags";a:0:{}}s:36:"calculate_category_child_count_cache";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"cat_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:107:"The ID of the category (null: skip, called by some code that didn't realise it didn't impact a tree parent)";s:11:"phpdoc_name";s:6:"cat_id";}i:1;a:7:{s:4:"name";s:17:"recursive_updates";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:129:"Whether to recurse up the tree to force recalculations on other categories (recommended, unless you are doing a complete rebuild)";s:11:"phpdoc_name";s:17:"recursive_updates";}}s:4:"name";s:36:"calculate_category_child_count_cache";s:11:"description";s:43:"Update cache for a categories child counts.";s:5:"flags";a:0:{}}s:30:"actual_edit_catalogue_category";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{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:22:"The ID of the category";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:5:"notes";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:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of the parent category (null: no parent)";s:11:"phpdoc_name";s:9:"parent_id";}i:5;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"Meta keywords for the category";s:11:"phpdoc_name";s:13:"meta_keywords";}i:6;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:33:"Meta description for the category";s:11:"phpdoc_name";s:16:"meta_description";}i:7;a:5:{s:4:"name";s:9:"rep_image";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:55:"The representative image for the category (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:8;a:5:{s:4:"name";s:15:"move_days_lower";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:9;a:5:{s:4:"name";s:16:"move_days_higher";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:10;a:5:{s:4:"name";s:11:"move_target";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:11;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The order";s:11:"phpdoc_name";s:5:"order";}i:12;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:13;a:7:{s:4:"name";s:6:"c_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:40:"The catalogue name (null: do not change)";s:11:"phpdoc_name";s:6:"c_name";}}s:4:"name";s:30:"actual_edit_catalogue_category";s:11:"description";s:26:"Edit a catalogue category.";s:5:"flags";a:0:{}}s:32:"actual_delete_catalogue_category";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:22:"The ID of the category";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:12:"deleting_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:163:"Whether we're deleting everything under the category; if FALSE we will actively reassign child categories and entries up a level (if tree) or deletes (if not tree)";s:11:"phpdoc_name";s:12:"deleting_all";}}s:4:"name";s:32:"actual_delete_catalogue_category";s:11:"description";s:28:"Delete a catalogue category.";s:5:"flags";a:0:{}}s:26:"actual_add_catalogue_entry";a:6:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:43:"The ID of the category that the entry is in";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the entry has been validated";s:11:"phpdoc_name";s:9:"validated";}i:2;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"Hidden notes pertaining to the entry";s:11:"phpdoc_name";s:5:"notes";}i:3;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the entry may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:4;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:5;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the entry may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:6;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field IDs, to values, that defines the entries settings";s:11:"phpdoc_name";s:3:"map";}i:7;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:40:"The time the entry was added (null: now)";s:11:"phpdoc_name";s:4:"time";}i:8;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:42:"The entries submitter (null: current user)";s:11:"phpdoc_name";s:9:"submitter";}i:9;a:7:{s:4:"name";s:9:"edit_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:27:"The edit time (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:10;a:7:{s:4:"name";s:5:"views";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:"The number of views";s:11:"phpdoc_name";s:5:"views";}i:11;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:12;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:13;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:26:"actual_add_catalogue_entry";s:11:"description";s:41:"Adds an entry to the specified catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:31:"The ID of the newly added entry";}}s:27:"actual_edit_catalogue_entry";a:5:{s:8:"filename";s:23:"sources/catalogues2.php";s:10:"parameters";a:15:{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:32:"The ID of the entry being edited";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:43:"The ID of the category that the entry is in";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the entry has been validated";s:11:"phpdoc_name";s:9:"validated";}i:3;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"Hidden notes pertaining to the entry";s:11:"phpdoc_name";s:5:"notes";}i:4;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the entry may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:5;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:6;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the entry may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:7;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field IDs, to values, that defines the entries settings";s:11:"phpdoc_name";s:3:"map";}i:8;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:51:"Meta keywords for this resource (null: do not edit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:9;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:54:"Meta description for this resource (null: do not edit)";s:11:"phpdoc_name";s:16:"meta_description";}i:10;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:11;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:12;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:13;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:14;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:88:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:27:"actual_edit_catalogue_entry";s:11:"description";s:34:"Edit the specified catalogue entry";s:5:"flags";a:0:{}}s:29:"actual_delete_catalogue_entry";a:5:{s:8:"filename";s:23:"sources/catalogues2.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:29:"The ID of the entry to delete";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:29:"actual_delete_catalogue_entry";s:11:"description";s:25:"Delete a catalogue entry.";s:5:"flags";a:0:{}}s:23:"_convert_data_encodings";a:5:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"known_utf8";s:7:"default";s:13:"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 we know we are working in utf-8. This is the case for AJAX calls.";s:11:"phpdoc_name";s:10:"known_utf8";}}s:4:"name";s:23:"_convert_data_encodings";s:11:"description";s:211:"Performs lots of magic to make sure data encodings are converted correctly. Input, and output too (as often stores internally in UTF or performs automatic dynamic conversions from internal to external charsets).";s:5:"flags";a:0:{}}s:11:"unichrm_hex";a:6:{s:8:"filename";s:26:"sources/character_sets.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:31:"Regular expression match array.";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:11:"unichrm_hex";s:11:"description";s:82:"Convert a unicode character number to a unicode string. Callback for preg_replace.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:42:"Converted data (false: could not convert).";}}s:7:"unichrm";a:6:{s:8:"filename";s:26:"sources/character_sets.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:31:"Regular expression match array.";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:7:"unichrm";s:11:"description";s:82:"Convert a unicode character number to a unicode string. Callback for preg_replace.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:42:"Converted data (false: could not convert).";}}s:6:"unichr";a:6:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"Character number.";s:11:"phpdoc_name";s:1:"c";}}s:4:"name";s:6:"unichr";s:11:"description";s:112:"Convert a unicode character number to a HTML-entity enabled string, using lower ASCII characters where possible.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:42:"Converted data (false: could not convert).";}}s:16:"foxy_utf8_to_nce";a:6:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:4:"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:11:"Input text.";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:16:"foxy_utf8_to_nce";s:11:"description";s:203:"Convert text to an entity format via unicode, compatible with the GD TTF functions. Originally taken from php manual but heavily modified. Passed text is assumed to be in the get_charset() character set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:47:"Output 7-bit unicode-entity-encoded ASCII text.";}}s:10:"utf8tohtml";a:6:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"utf8";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:6:"Input.";s:11:"phpdoc_name";s:4:"utf8";}}s:4:"name";s:10:"utf8tohtml";s:11:"description";s:132:"Turn utf-8 characters into unicode HTML entities. Useful as GD truetype functions need this. Based on function in PHP code comments.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Output.";}}s:37:"do_simple_environment_utf8_conversion";a:5:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"do_simple_environment_utf8_conversion";s:11:"description";s:114:"Do a UTF8 conversion on the environmental GET/POST parameters (ISO-8859-1 charset, which PHP supports internally).";s:5:"flags";a:0:{}}s:30:"do_environment_utf8_conversion";a:5:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"from_charset";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:55:"Charset that was used to encode the environmental data.";s:11:"phpdoc_name";s:12:"from_charset";}}s:4:"name";s:30:"do_environment_utf8_conversion";s:11:"description";s:62:"Do a UTF8 conversion on the environmental GET/POST parameters.";s:5:"flags";a:0:{}}s:24:"will_be_unicode_neutered";a:6:{s:8:"filename";s:26:"sources/character_sets.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:14:"Data to check.";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:24:"will_be_unicode_neutered";s:11:"description";s:431:"Guard for entity_utf8_decode. Checks that the data can be stripped so there is no unicode left. Either the htmlentities function must convert mechanically to entity-characters or all higher ascii character codes (which are actually unicode control codes in a unicode interpretation) that are used happen to be linked to named entities.PHP's utf-8 support may not be great. For example, we have seen emoji characters not converting.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether we are good to execute entity_utf8_decode.";}}s:28:"convert_to_internal_encoding";a:6:{s:8:"filename";s:26:"sources/character_sets.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:16:"Data to convert.";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:13:"input_charset";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:78:"Charset to convert from (null: that read by the last http_download_file call).";s:11:"phpdoc_name";s:13:"input_charset";}i:2;a:7:{s:4:"name";s:16:"internal_charset";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:47:"Charset to convert to (null: current encoding).";s:11:"phpdoc_name";s:16:"internal_charset";}}s:4:"name";s:28:"convert_to_internal_encoding";s:11:"description";s:61:"Convert some data from one encoding to the internal encoding.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Converted data.";}}s:18:"entity_utf8_decode";a:6:{s:8:"filename";s:26:"sources/character_sets.php";s:10:"parameters";a:2:{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:16:"Data to convert.";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:16:"internal_charset";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"Charset to convert to.";s:11:"phpdoc_name";s:16:"internal_charset";}}s:4:"name";s:18:"entity_utf8_decode";s:11:"description";s:110:"Convert some data from UTF to a character set PHP supports, using HTML entities where there's no direct match.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:42:"Converted data (false: could not convert).";}}s:10:"init__chat";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"init__chat";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"render_chat_box";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:4:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:15:"render_chat_box";s:11:"description";s:59:"Get Tempcode for a chatroom 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:15:"messages_script";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"messages_script";s:11:"description";s:35:"High-level messages script handling";s:5:"flags";a:0:{}}s:17:"member_befriended";a:6:{s:8:"filename";s:16:"sources/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:24:"The member being checked";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:17:"member_befriended";s:11:"description";s:53:"Find if a member is befriended by the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the member is befriended";}}s:27:"filter_invites_for_blocking";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"people";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"Comma-separated people list";s:11:"phpdoc_name";s:6:"people";}}s:4:"name";s:27:"filter_invites_for_blocking";s:11:"description";s:112:"Filter an invite list to make sure people who are blocking don't get drawn in and hence their blocking unmasked.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:36:"Filtered comma-separated people list";}}s:15:"chat_room_prune";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"room_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:25:"Room ID (null: all rooms)";s:11:"phpdoc_name";s:7:"room_id";}}s:4:"name";s:15:"chat_room_prune";s:11:"description";s:29:"Prune membership of chatroom.";s:5:"flags";a:0:{}}s:26:"_chat_messages_script_ajax";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{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:76:"Room ID (or -1 to mean 'all' as used for IM global process, -2 to mean none)";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:7:{s:4:"name";s:7:"backlog";s:7:"default";s:13:"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:"Output the backlog?";s:11:"phpdoc_name";s:7:"backlog";}i:2;a:7:{s:4:"name";s:10:"message_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:68:"Latest received message ID (null: we're not getting latest messages)";s:11:"phpdoc_name";s:10:"message_id";}i:3;a:7:{s:4:"name";s:8:"event_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:127:"Latest event ID (null: we're not getting events, but we do request a null event so we can use that as a future reference point)";s:11:"phpdoc_name";s:8:"event_id";}i:4;a:7:{s:4:"name";s:13:"events_output";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:23:"Events output to append";s:11:"phpdoc_name";s:13:"events_output";}}s:4:"name";s:26:"_chat_messages_script_ajax";s:11:"description";s:170:"Output messages (in XML format) from up to five minutes ago (give somebody who's just joined the chatroom some chat backlog), or the messages posted since the last check.";s:5:"flags";a:0:{}}s:14:"chatter_active";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:2:{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:9:"Member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:7:"room_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:21:"Room ID (null: lobby)";s:11:"phpdoc_name";s:7:"room_id";}}s:4:"name";s:14:"chatter_active";s:11:"description";s:56:"Find whether a member is active in chat (i.e. not away).";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 active";}}s:17:"is_chat_moderator";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:3:{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:9:"Member ID";s:11:"phpdoc_name";s:9:"member_id";}i:1;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:7:"Room ID";s:11:"phpdoc_name";s:7:"room_id";}i:2;a:5:{s:4:"name";s:10:"room_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:23:"Room owner (null: none)";s:11:"phpdoc_name";s:10:"room_owner";}}s:4:"name";s:17:"is_chat_moderator";s:11:"description";s:51:"Find whether a member is a moderator of a chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the member is a moderator of the chatroom";}}s:23:"_chat_post_message_ajax";a:5:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{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:7:"Room ID";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The message";s:11:"phpdoc_name";s:7:"message";}i:2;a:5:{s:4:"name";s:4:"font";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"Font name";s:11:"phpdoc_name";s:4:"font";}i:3;a:5:{s:4:"name";s:6:"colour";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Font colour";s:11:"phpdoc_name";s:6:"colour";}i:4;a:5:{s:4:"name";s:13:"first_message";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:74:"Whether this is the first message sent out to this room, since some change";s:11:"phpdoc_name";s:13:"first_message";}}s:4:"name";s:23:"_chat_post_message_ajax";s:11:"description";s:39:"Handle an AJAX message posting request.";s:5:"flags";a:0:{}}s:17:"chat_post_message";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{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:43:"The room ID for the message to be posted in";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"The message body";s:11:"phpdoc_name";s:7:"message";}i:2;a:5:{s:4:"name";s:9:"font_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:29:"The font name for the message";s:11:"phpdoc_name";s:9:"font_name";}i:3;a:5:{s:4:"name";s:11:"text_colour";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:31:"The text colour for the message";s:11:"phpdoc_name";s:11:"text_colour";}i:4;a:7:{s:4:"name";s:8:"wrap_pos";s:7:"default";i:60;s:11:"default_raw";s:2:"60";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:33:"The wrap position for the message";s:11:"phpdoc_name";s:8:"wrap_pos";}}s:4:"name";s:17:"chat_post_message";s:11:"description";s:184:"Enter a message into the database for the specified room, and with the specified parameters. The message is filtered for banned words, and is compressed into a Tempcode storage format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether the message was successfully posted or not";}}s:20:"get_chatters_in_room";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"room_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:25:"The room ID (null: lobby)";s:11:"phpdoc_name";s:7:"room_id";}}s:4:"name";s:20:"get_chatters_in_room";s:11:"description";s:231:"Get the people who have posted a message in the specified room within the last x minutes (defaults to five). Note that this function performs no pruning- the chat lobby will do that. It does do an activity time-range select though.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:47:"A map of members in the room. User ID=>Username";}}s:24:"get_chatters_in_room_tpl";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"users";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:54:"A mapping (user=>username) of the chatters in the room";s:11:"phpdoc_name";s:5:"users";}}s:4:"name";s:24:"get_chatters_in_room_tpl";s:11:"description";s:64:"Get some template code showing the number of chatters in a room.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The Tempcode";}}s:17:"get_chatroom_name";a:6:{s:8:"filename";s:16:"sources/chat.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:11:"The room ID";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:7:{s:4:"name";s:10:"allow_null";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Allow the chatroom to not be found (i.e. don't die if it can't be)";s:11:"phpdoc_name";s:10:"allow_null";}}s:4:"name";s:17:"get_chatroom_name";s:11:"description";s:65:"Get the textual name of the specified chatroom, from its room ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:31:"The room name (null: not found)";}}s:15:"get_chatroom_id";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"room_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:24:"The name of the chatroom";s:11:"phpdoc_name";s:9:"room_name";}i:1;a:7:{s:4:"name";s:14:"must_not_be_im";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:85:"Make sure the room is not an IM room. If it is an IM room, pretend it does not exist.";s:11:"phpdoc_name";s:14:"must_not_be_im";}}s:4:"name";s:15:"get_chatroom_id";s:11:"description";s:57:"Get the ID of the specified chatroom, from its room name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of the chatroom (null: no such chatroom)";}}s:18:"chat_get_all_rooms";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"chat_get_all_rooms";s:11:"description";s:34:"Get an array of all the chatrooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"An array of all the chatrooms";}}s:21:"chat_get_room_content";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:7:"room_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The room ID (null: for all IM)";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:5:{s:4:"name";s:6:"_rooms";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"Rooms database rows that we'll need";s:11:"phpdoc_name";s:6:"_rooms";}i:2;a:7:{s:4:"name";s:12:"max_messages";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:64:"The maximum number of messages to be returned (null: no maximum)";s:11:"phpdoc_name";s:12:"max_messages";}i:3;a:7:{s:4:"name";s:11:"dereference";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:79:"Whether to dereference the returned messages (i.e. lookup the language strings)";s:11:"phpdoc_name";s:11:"dereference";}i:4;a:7:{s:4:"name";s:11:"downloading";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether to return the messages in a downloadeable format (using the templates for log downloading)";s:11:"phpdoc_name";s:11:"downloading";}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:63:"The datetime stamp to start gathering messages from (null: all)";s:11:"phpdoc_name";s:5:"start";}i:6;a:7:{s:4:"name";s:6:"finish";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:69:"The datetime stamp to stop gathering messages at (null: current time)";s:11:"phpdoc_name";s:6:"finish";}i:7;a:7:{s:4:"name";s:6:"uptoid";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:64:"The lowest message ID to return (null: no special lowest number)";s:11:"phpdoc_name";s:6:"uptoid";}i:8;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:46:"The zone the chat module is in (null: find it)";s:11:"phpdoc_name";s:4:"zone";}i:9;a:7:{s:4:"name";s:13:"entering_room";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:84:"The language string ID for the "entering room" message (null: not entering the room)";s:11:"phpdoc_name";s:13:"entering_room";}i:10;a:7:{s:4:"name";s:18:"return_my_messages";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Return the current user's messages?";s:11:"phpdoc_name";s:18:"return_my_messages";}i:11;a:7:{s:4:"name";s:22:"return_system_messages";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Return system messages";s:11:"phpdoc_name";s:22:"return_system_messages";}}s:4:"name";s:21:"chat_get_room_content";s:11:"description";s:285:"Get a multidimensional array of the content of the specified chatroom.It automatically parses for Comcode, chatcode, banned words, emoticons, and uses complex logic to decide whether or not to show each message; based upon who the member is, the message content, and other such inputs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"An array of all the messages collected according to the search criteria";}}s:24:"_deal_with_chatcode_tags";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The text we are using";s:11:"phpdoc_name";s:4:"text";}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:27:"The tag name we are parsing";s:11:"phpdoc_name";s:3:"tag";}i:2;a:5:{s:4:"name";s:7:"pm_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"1st param";s:11:"phpdoc_name";s:7:"pm_user";}i:3;a:5:{s:4:"name";s:10:"pm_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"2nd param";s:11:"phpdoc_name";s:10:"pm_message";}i:4;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The username of who made this chatcode";s:11:"phpdoc_name";s:8:"username";}i:5;a:5:{s:4:"name";s:12:"max_messages";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:64:"The maximum number of messages to be returned (null: no maximum)";s:11:"phpdoc_name";s:12:"max_messages";}i:6;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The zone that our chat module is in";s:11:"phpdoc_name";s:4:"zone";}i:7;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:29:"The room ID the message is in";s:11:"phpdoc_name";s:7:"room_id";}i:8;a:5:{s:4:"name";s:14:"system_message";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether this is within a system message";s:11:"phpdoc_name";s:14:"system_message";}}s:4:"name";s:24:"_deal_with_chatcode_tags";s:11:"description";s:59:"Parse chat code tags (called multiple times, for each tag).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A pair: whether the message was deleted, and the new text of the message";}}s:27:"_deal_with_chatcode_private";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:7:"pm_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"The member a private message should be sent to";s:11:"phpdoc_name";s:7:"pm_user";}i:1;a:5:{s:4:"name";s:10:"pm_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The private message";s:11:"phpdoc_name";s:10:"pm_message";}i:2;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The username of who made this chatcode";s:11:"phpdoc_name";s:8:"username";}i:3;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The text we are using";s:11:"phpdoc_name";s:4:"text";}i:4;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:29:"The room ID the message is in";s:11:"phpdoc_name";s:7:"room_id";}i:5;a:5:{s:4:"name";s:14:"system_message";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether this is within a system message";s:11:"phpdoc_name";s:14:"system_message";}}s:4:"name";s:27:"_deal_with_chatcode_private";s:11:"description";s:36:"Parse private message chat code tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A pair: whether the message was deleted, and the new text of the message";}}s:26:"_deal_with_chatcode_invite";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"pm_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:41:"Comma-separated list of members to invite";s:11:"phpdoc_name";s:7:"pm_user";}i:1;a:5:{s:4:"name";s:10:"pm_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The room name";s:11:"phpdoc_name";s:10:"pm_message";}i:2;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The username of who made this chatcode";s:11:"phpdoc_name";s:8:"username";}i:3;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The text we are using";s:11:"phpdoc_name";s:4:"text";}i:4;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The zone the chat module is in";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:26:"_deal_with_chatcode_invite";s:11:"description";s:31:"Parse invitation chat code tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A pair: whether the message was deleted, and the new text of the message";}}s:27:"_deal_with_chatcode_newroom";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"pm_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The room name";s:11:"phpdoc_name";s:7:"pm_user";}i:1;a:5:{s:4:"name";s:10:"pm_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"Comma-separated list of members to allow in";s:11:"phpdoc_name";s:10:"pm_message";}i:2;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The username of who made this chatcode";s:11:"phpdoc_name";s:8:"username";}i:3;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The text we are using";s:11:"phpdoc_name";s:4:"text";}i:4;a:5:{s:4:"name";s:12:"max_messages";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:64:"The maximum number of messages to be returned (null: no maximum)";s:11:"phpdoc_name";s:12:"max_messages";}}s:4:"name";s:27:"_deal_with_chatcode_newroom";s:11:"description";s:34:"Parse room creation chat code tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A pair: whether the message was deleted, and the new text of the message";}}s:22:"_remove_empty_messages";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"messages";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Original list of messages";s:11:"phpdoc_name";s:8:"messages";}i:1;a:5:{s:4:"name";s:11:"message_ids";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"List of message IDs to keep";s:11:"phpdoc_name";s:11:"message_ids";}}s:4:"name";s:22:"_remove_empty_messages";s:11:"description";s:95:"Remove any messages from the list of messages that aren't mentioned in the list of message IDs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"A new list of messages";}}s:22:"parse_allow_list_input";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"_allow";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"A comma-separated list of usernames";s:11:"phpdoc_name";s:6:"_allow";}}s:4:"name";s:22:"parse_allow_list_input";s:11:"description";s:125:"Takes a comma-separated list of usernames, split it up, convert all the usernames to IDs, and put it all back together again.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:36:"A comma-separated list of member IDs";}}s:21:"check_chatroom_access";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"room";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:65:"The row of the chatroom to check for access OR its ID (AUTO_LINK)";s:11:"phpdoc_name";s:4:"room";}i:1;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:73:"Whether to return false if there is no access (as opposed to bombing out)";s:11:"phpdoc_name";s:3:"ret";}i:2;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 to check as (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:16:"must_be_explicit";s:7:"default";s:13:"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 also ensure for $member_id having explicit access";s:11:"phpdoc_name";s:16:"must_be_explicit";}}s:4:"name";s:21:"check_chatroom_access";s:11:"description";s:50:"Check whether a member has access to the chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether the current member has access to the chatroom";}}s:18:"get_chat_sound_tpl";a:6:{s:8:"filename";s:16:"sources/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_chat_sound_tpl";s:11:"description";s:85:"Get a template that will set up the chat sound effects as for what this member needs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"Template to set up chat sound effects.";}}s:12:"blocking_add";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"blocker";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:19:"The member blocking";s:11:"phpdoc_name";s:7:"blocker";}i:1;a:5:{s:4:"name";s:7:"blocked";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:24:"The member being blocked";s:11:"phpdoc_name";s:7:"blocked";}i:2;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:40:"The logged time of the block (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:12:"blocking_add";s:11:"description";s:15:"Block a member.";s:5:"flags";a:0:{}}s:15:"blocking_remove";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"blocker";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:21:"The member unblocking";s:11:"phpdoc_name";s:7:"blocker";}i:1;a:5:{s:4:"name";s:7:"blocked";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member being unblocked";s:11:"phpdoc_name";s:7:"blocked";}}s:4:"name";s:15:"blocking_remove";s:11:"description";s:17:"Unblock a member.";s:5:"flags";a:0:{}}s:10:"friend_add";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"likes";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:22:"The member befriending";s:11:"phpdoc_name";s:5:"likes";}i:1;a:5:{s:4:"name";s:5:"liked";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:27:"The member being befriended";s:11:"phpdoc_name";s:5:"liked";}i:2;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:45:"The logged time of the friendship (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:10:"friend_add";s:11:"description";s:13:"Add a friend.";s:5:"flags";a:0:{}}s:13:"friend_remove";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"likes";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:22:"The member befriending";s:11:"phpdoc_name";s:5:"likes";}i:1;a:5:{s:4:"name";s:5:"liked";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"The member being dumped";s:11:"phpdoc_name";s:5:"liked";}}s:4:"name";s:13:"friend_remove";s:11:"description";s:25:"Remove ('dump') a friend.";s:5:"flags";a:0:{}}s:19:"get_chatroom_fields";a:6:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:9:{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 chatroom ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"is_made_by_me";s:7:"default";s:13:"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 the room is being made as a private room by the current member";s:11:"phpdoc_name";s:13:"is_made_by_me";}i:2;a:7:{s:4:"name";s:9:"room_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:13:"The room name";s:11:"phpdoc_name";s:9:"room_name";}i:3;a:7:{s:4:"name";s:7:"welcome";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:"The welcome message";s:11:"phpdoc_name";s:7:"welcome";}i:4;a:7:{s:4:"name";s:8:"username";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 owner username";s:11:"phpdoc_name";s:8:"username";}i:5;a:7:{s:4:"name";s:6:"allow2";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:76:"The comma-separated list of users that may access it (blank: no restriction)";s:11:"phpdoc_name";s:6:"allow2";}i:6;a:7:{s:4:"name";s:13:"allow2_groups";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:81:"The comma-separated list of usergroups that may access it (blank: no restriction)";s:11:"phpdoc_name";s:13:"allow2_groups";}i:7;a:7:{s:4:"name";s:9:"disallow2";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:80:"The comma-separated list of users that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:9:"disallow2";}i:8;a:7:{s:4:"name";s:16:"disallow2_groups";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:85:"The comma-separated list of usergroups that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:16:"disallow2_groups";}}s:4:"name";s:19:"get_chatroom_fields";s:11:"description";s:46:"Get form fields for adding/editing a chatroom.";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:24:"read_in_chat_perm_fields";a:6:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"read_in_chat_perm_fields";s:11:"description";s:61:"Read in chat permission fields, from the complex posted data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"A tuple of permission fields";}}s:12:"add_chatroom";a:6:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:7:"welcome";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"The welcome message";s:11:"phpdoc_name";s:7:"welcome";}i:1;a:5:{s:4:"name";s:9:"room_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The room name";s:11:"phpdoc_name";s:9:"room_name";}i:2;a:5:{s:4:"name";s:10:"room_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:14:"The room owner";s:11:"phpdoc_name";s:10:"room_owner";}i:3;a:5:{s:4:"name";s:6:"allow2";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:76:"The comma-separated list of users that may access it (blank: no restriction)";s:11:"phpdoc_name";s:6:"allow2";}i:4;a:5:{s:4:"name";s:13:"allow2_groups";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:81:"The comma-separated list of usergroups that may access it (blank: no restriction)";s:11:"phpdoc_name";s:13:"allow2_groups";}i:5;a:5:{s:4:"name";s:9:"disallow2";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:80:"The comma-separated list of users that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:9:"disallow2";}i:6;a:5:{s:4:"name";s:16:"disallow2_groups";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:85:"The comma-separated list of usergroups that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:16:"disallow2_groups";}i:7;a:5:{s:4:"name";s:13:"room_language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:17:"The room language";s:11:"phpdoc_name";s:13:"room_language";}i:8;a:7:{s:4:"name";s:5:"is_im";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:24:"Whether it is an IM room";s:11:"phpdoc_name";s:5:"is_im";}}s:4:"name";s:12:"add_chatroom";s:11:"description";s:15:"Add a chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:15:"The chatroom ID";}}s:13:"edit_chatroom";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:9:{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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:7:"welcome";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"The welcome message";s:11:"phpdoc_name";s:7:"welcome";}i:2;a:5:{s:4:"name";s:9:"room_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The room name";s:11:"phpdoc_name";s:9:"room_name";}i:3;a:5:{s:4:"name";s:10:"room_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:14:"The room owner";s:11:"phpdoc_name";s:10:"room_owner";}i:4;a:5:{s:4:"name";s:6:"allow2";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:76:"The comma-separated list of users that may access it (blank: no restriction)";s:11:"phpdoc_name";s:6:"allow2";}i:5;a:5:{s:4:"name";s:13:"allow2_groups";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:81:"The comma-separated list of usergroups that may access it (blank: no restriction)";s:11:"phpdoc_name";s:13:"allow2_groups";}i:6;a:5:{s:4:"name";s:9:"disallow2";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:80:"The comma-separated list of users that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:9:"disallow2";}i:7;a:5:{s:4:"name";s:16:"disallow2_groups";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:85:"The comma-separated list of usergroups that may NOT access it (blank: no restriction)";s:11:"phpdoc_name";s:16:"disallow2_groups";}i:8;a:5:{s:4:"name";s:13:"room_language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:17:"The room language";s:11:"phpdoc_name";s:13:"room_language";}}s:4:"name";s:13:"edit_chatroom";s:11:"description";s:16:"Edit a chatroom.";s:5:"flags";a:0:{}}s:15:"delete_chatroom";a:5:{s:8:"filename";s:17:"sources/chat2.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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"delete_chatroom";s:11:"description";s:18:"Delete a chatroom.";s:5:"flags";a:0:{}}s:20:"delete_chat_messages";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"where";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:37:"Where query to specify what to delete";s:11:"phpdoc_name";s:5:"where";}}s:4:"name";s:20:"delete_chat_messages";s:11:"description";s:21:"Delete chat messages.";s:5:"flags";a:0:{}}s:20:"delete_all_chatrooms";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"delete_all_chatrooms";s:11:"description";s:21:"Delete all chatrooms.";s:5:"flags";a:0:{}}s:15:"chatroom_ban_to";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:2:{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:17:"The member to ban";s:11:"phpdoc_name";s:9:"member_id";}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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"chatroom_ban_to";s:11:"description";s:29:"Ban a member from a chatroom.";s:5:"flags";a:0:{}}s:17:"chatroom_unban_to";a:5:{s:8:"filename";s:17:"sources/chat2.php";s:10:"parameters";a:2:{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:19:"The member to unban";s:11:"phpdoc_name";s:9:"member_id";}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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"chatroom_unban_to";s:11:"description";s:31:"Unban a member from a chatroom.";s:5:"flags";a:0:{}}s:24:"delete_chatroom_messages";a:5:{s:8:"filename";s:17:"sources/chat2.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:15:"The chatroom ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:24:"delete_chatroom_messages";s:11:"description";s:34:"Delete all messages in a chatroom.";s:5:"flags";a:0:{}}s:16:"enter_chat_lobby";a:5:{s:8:"filename";s:22:"sources/chat_lobby.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"enter_chat_lobby";s:11:"description";s:65:"Enter the current member to the chat lobby / Mark them available.";s:5:"flags";a:0:{}}s:16:"show_im_contacts";a:6:{s:8:"filename";s:22:"sources/chat_lobby.php";s:10:"parameters";a:3:{i:0;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:35:"The member ID (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:7:"simpler";s:7:"default";s:13:"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 show a simpler, more compact, UI.";s:11:"phpdoc_name";s:7:"simpler";}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:32:"Maximum to show (null: default).";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:16:"show_im_contacts";s:11:"description";s:86:"Show IM contacts, with online/offline status and clickability to initiate IM sessions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The contact UI.";}}s:23:"handle_chatroom_pruning";a:6:{s:8:"filename";s:22:"sources/chat_lobby.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:41:"The row of the chatroom to possibly prune";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:23:"handle_chatroom_pruning";s:11:"description";s:34:"Prune timed-out private chatrooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the room was pruned";}}s:16:"chat_logs_script";a:5:{s:8:"filename";s:21:"sources/chat_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"chat_logs_script";s:11:"description";s:24:"Pass out chat log files.";s:5:"flags";a:0:{}}s:11:"chat_poller";a:5:{s:8:"filename";s:23:"sources/chat_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"chat_poller";s:11:"description";s:81:"Function to quickly (efficiently) check to see if there's been any chat activity.";s:5:"flags";a:0:{}}s:14:"chat_null_exit";a:5:{s:8:"filename";s:23:"sources/chat_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"chat_null_exit";s:11:"description";s:35:"Exit the code saying "no messages".";s:5:"flags";a:0:{}}s:15:"shoutbox_script";a:6:{s:8:"filename";s:25:"sources/chat_shoutbox.php";s:10:"parameters";a:3:{i:0;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:59:"Whether to get the output instead of outputting it directly";s:11:"phpdoc_name";s:3:"ret";}i:1;a:7:{s:4:"name";s:7:"room_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:"Chatroom ID (null: read from environment)";s:11:"phpdoc_name";s:7:"room_id";}i:2;a:7:{s:4:"name";s:12:"num_messages";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:68:"The maximum number of messages to show (null: read from environment)";s:11:"phpdoc_name";s:12:"num_messages";}}s:4:"name";s:15:"shoutbox_script";s:11:"description";s:28:"Outputs the shoutbox iframe.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:35:"Output (null: outputted it already)";}}s:14:"get_effect_set";a:6:{s:8:"filename";s:23:"sources/chat_sounds.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:16:"only_overridable";s:7:"default";s:13:"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:"Map to null if it is not overridable.";s:11:"phpdoc_name";s:16:"only_overridable";}}s:4:"name";s:14:"get_effect_set";s:11:"description";s:49:"Get the list of all available chat sound effects.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:3:"map";s:11:"description";s:73:"All available sound effects (mapping between base code, and actual code).";}}s:19:"get_effect_settings";a:6:{s:8:"filename";s:23:"sources/chat_sounds.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:9:"full_urls";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to use full URLs in the mappings.";s:11:"phpdoc_name";s:9:"full_urls";}i:1;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:73:"Get settings overridden for this specific member (null: global settings).";s:11:"phpdoc_name";s:10:"for_member";}i:2;a:7:{s:4:"name";s:11:"all_members";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:113:"Get global settings and settings overridden for all members (if this is true we'd expect $for_member to be null).";s:11:"phpdoc_name";s:11:"all_members";}}s:4:"name";s:19:"get_effect_settings";s:11:"description";s:111:"Get a list of template mappings for the current member, between sound effect IDs and the URLs to the mp3 fiels.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The template mappings.";}}s:16:"get_num_chatters";a:6:{s:8:"filename";s:22:"sources/chat_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_num_chatters";s:11:"description";s:215:"Get the number of people using the chat system at the moment. Note that this is intentionally different from 'users online' even if site wide IM is enabled- it has a 60 second timeout, so it really is active people.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:39:"The number of people on the chat system";}}s:17:"get_num_chatrooms";a:6:{s:8:"filename";s:22:"sources/chat_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_num_chatrooms";s:11:"description";s:118:"Get the number of chatrooms in the database. By default, there is only one, but more may be added via the admin panel.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:39:"The number of chatrooms in the database";}}s:17:"get_num_chatposts";a:6:{s:8:"filename";s:22:"sources/chat_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_num_chatposts";s:11:"description";s:56:"Get the total number of chat posts in all the chatrooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:40:"The number of chat posts in the database";}}s:18:"cns_field_editable";a:6:{s:8:"filename";s:33:"sources/cns_field_editability.php";s:10:"parameters";a:2:{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:10:"Field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:12:"special_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:99:"The special type of the user (built-in types are: , ldap, httpauth, )";s:11:"phpdoc_name";s:12:"special_type";}}s:4:"name";s:18:"cns_field_editable";s:11:"description";s:132:"Find is a field is editable.Called for fields that have a fair chance of being set to auto-sync, and hence be locked to local edits.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the field is editable";}}s:23:"_helper_apply_emoticons";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}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:58:"Only emoticons the given member can see (null: don't care)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"_helper_apply_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:29:"_helper_make_post_forum_topic";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:21:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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: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:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:4;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:5;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:6;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:7;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:8;a:5:{s:4:"name";s:11:"content_url";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:9;a:5:{s:4:"name";s:4:"time";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:39:"The topic time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:10;a:5:{s:4:"name";s:2:"ip";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:11;a:5:{s:4:"name";s:9:"validated";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:12;a:5:{s:4:"name";s:15:"topic_validated";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:13;a:5:{s:4:"name";s:16:"skip_post_checks";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:14;a:5:{s:4:"name";s:20:"poster_name_if_guest";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:15;a:5:{s:4:"name";s:9:"parent_id";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:16;a:5:{s:4:"name";s:10:"staff_only";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:17;a:5:{s:4:"name";s:32:"no_notify_for__notification_code";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:18;a:5:{s:4:"name";s:28:"no_notify_for__code_category";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:19;a:5:{s:4:"name";s:9:"time_post";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:20;a:5:{s:4:"name";s:21:"spacer_post_member_id";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:29:"_helper_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:25:"_helper_show_forum_topics";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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:3;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:4;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:5;a:5:{s:4:"name";s:18:"filter_topic_title";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:6;a:5:{s:4:"name";s:24:"filter_topic_description";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:7;a:5:{s:4:"name";s:16:"show_first_posts";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:8;a:6:{s:4:"name";s:8:"date_key";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:9;a:5:{s:4:"name";s:3:"hot";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:10;a:5:{s:4:"name";s:9:"open_only";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:25:"_helper_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:"not_like_spacer_posts";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";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:5:"field";}}s:4:"name";s:21:"not_like_spacer_posts";s:11:"description";s:96:"Get a bit of SQL to make sure that a DB field is not like a spacer post in any of the languages.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:29:"_helper_get_forum_topic_posts";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:35:"The topic ID (null: does not exist)";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:8:"?integer";s:11:"description";s:70:"The comment count will be returned here by reference (null: no return)";s:11:"phpdoc_name";s:5:"count";}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:45:"Maximum comments to returned (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:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:5;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:6;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:7;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:8;a:7:{s:4:"name";s:8:"post_ids";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:8:"post_ids";}i:9;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:10;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:35:"date compound_rating average_rating";}}s:4:"name";s:29:"_helper_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:34:"_helper_get_post_remaining_details";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}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:25:"Topic the posts come from";s:11:"phpdoc_name";s:8:"topic_id";}i:2;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:34:"_helper_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:28:"_helper_get_emoticon_chooser";a:6:{s:8:"filename";s:35:"sources/cns_forum_driver_helper.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}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:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:28:"_helper_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:22:"_forum_authorise_login";a:6:{s:8:"filename";s:40:"sources/cns_forum_driver_helper_auth.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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:3;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:4;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:5;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:22:"_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:35:"_helper_install_create_custom_field";a:6:{s:8:"filename";s:43:"sources/cns_forum_driver_helper_install.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:29:"Link to the real forum driver";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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:3;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:4;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:5;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:6;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:7;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:8;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:9;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:10;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:35:"_helper_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:"_helper_install_specifics";a:6:{s:8:"filename";s:43:"sources/cns_forum_driver_helper_install.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"_helper_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:30:"_helper_install_test_load_from";a:6:{s:8:"filename";s:43:"sources/cns_forum_driver_helper_install.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:30:"_helper_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:16:"init__cns_forums";a:5:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__cns_forums";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"render_forum_box";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:6:{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:9:"Forum row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_forum_box";s:11:"description";s:19:"Render a forum box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The forum box";}}s:20:"get_forum_access_sql";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"Field name.";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_forum_access_sql";s:11:"description";s:53:"Get SQL clause to limit a query to accessible forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"SQL clause.";}}s:22:"cns_organise_into_tree";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"all_forums";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:90:"The list of all forum rows (be aware that this will get modified for performance reasons).";s:11:"phpdoc_name";s:10:"all_forums";}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:70:"The forum row that we are taking as the root of our current recursion.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:22:"cns_organise_into_tree";s:11:"description";s:52:"Organise a list of forum rows into a tree structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The child list of $forum_id.";}}s:30:"cns_get_all_subordinate_forums";a:6:{s:8:"filename";s:22:"sources/cns_forums.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:57:"The ID of the forum we are finding subordinate forums of.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:7:{s:4:"name";s:14:"create_or_list";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:85:"The field name to use in the OR list (null: do not make an OR list, return an array).";s:11:"phpdoc_name";s:14:"create_or_list";}i:2;a:7:{s:4:"name";s:4:"tree";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:88:"The forum tree structure (null: unknown, it will be found using cns_organise_into_tree).";s:11:"phpdoc_name";s:4:"tree";}i:3;a:7:{s:4:"name";s:18:"ignore_permissions";s:7:"default";s:13:"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 ignore permissions in this.";s:11:"phpdoc_name";s:18:"ignore_permissions";}}s:4:"name";s:30:"cns_get_all_subordinate_forums";s:11:"description";s:53:"Gets a list of subordinate forums of a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:48:"The list (is either a true list, or an OR list).";}}s:22:"cns_may_moderate_forum";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:2:{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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}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:37:"The member ID (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_may_moderate_forum";s:11:"description";s:51:"Find whether a member may moderate a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:28:"cns_get_forum_parent_or_list";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:2:{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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;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:104:"The ID of the parent forum (-1: get it from the DB) (null: there is no parent, as it is the root forum).";s:11:"phpdoc_name";s:9:"parent_id";}}s:4:"name";s:28:"cns_get_forum_parent_or_list";s:11:"description";s:81:"Get an OR list of a forums parents, suited for selection from the f_topics table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"The OR list.";}}s:21:"cns_forum_breadcrumbs";a:6:{s:8:"filename";s:22:"sources/cns_forums.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:15:"end_point_forum";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:143:"The ID of the forum we are at in our path (null: end of recursion) (false: no forum ID available, this_name and parent_forum must not be null).";s:11:"phpdoc_name";s:15:"end_point_forum";}i:1;a:7:{s:4:"name";s:9:"this_name";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:78:"The name of the given forum as string or Tempcode (null: find it from the DB).";s:11:"phpdoc_name";s:9:"this_name";}i:2;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:64:"The parent forum of the given forum (null: find it from the DB).";s:11:"phpdoc_name";s:12:"parent_forum";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether this is being called as the recursion start of deriving the breadcrumbs (top level call).";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:4:"root";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:26:"Virtual root (null: none).";s:11:"phpdoc_name";s:4:"root";}}s:4:"name";s:21:"cns_forum_breadcrumbs";s:11:"description";s:28:"Get breadcrumbs for a forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"The breadcrumbs.";}}s:32:"cns_forum_allows_anonymous_posts";a:6:{s:8:"filename";s:22:"sources/cns_forums.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:10:"?AUTO_LINK";s:11:"description";s:43:"The ID of the forum (null: private topics).";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:32:"cns_forum_allows_anonymous_posts";s:11:"description";s:41:"Whether a forum supports anonymous posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether it does.";}}s:41:"cns_create_selection_list_forum_groupings";a:6:{s:8:"filename";s:23:"sources/cns_forums2.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:62:"Category to avoid putting in the list (null: don't avoid any).";s:11:"phpdoc_name";s:5:"avoid";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:57:"Category selected by default (null: no specific default).";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:41:"cns_create_selection_list_forum_groupings";s:11:"description";s:55:"Get a nice list for selection from the forum groupings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The list.";}}s:36:"cns_create_selection_list_topic_tree";a:6:{s:8:"filename";s:23:"sources/cns_forums2.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:10:"?AUTO_LINK";s:11:"description";s:50:"The currently selected topic (null: none selected)";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:36:"cns_create_selection_list_topic_tree";s:11:"description";s:67:"Get a nice, formatted XHTML list of topics, in forum tree structure";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The list of topics";}}s:18:"cns_get_topic_tree";a:6:{s:8:"filename";s:23:"sources/cns_forums2.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:8:"forum_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:68:"The forum being at the root of our recursion (null: true root forum)";s:11:"phpdoc_name";s:8:"forum_id";}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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:2;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:8:"?ID_TEXT";s:11:"description";s:187:"The forum name of the $forum_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:5:"title";}i:3;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}}s:4:"name";s:18:"cns_get_topic_tree";s:11:"description";s:130:"Get a list of maps containing all the topics, and path information, under the specified forum - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:164:"A list of maps for all forums. Each map entry containins the fields 'id' (forum ID) and 'breadcrumbs' (path to the forum, including the forums own title), and more.";}}s:32:"create_selection_list_forum_tree";a:6:{s:8:"filename";s:23:"sources/cns_forums2.php";s:10:"parameters";a:6:{i:0;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:72:"The member that the view privileges are done for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:10:"base_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:62:"The forum we are starting from (null: capture the whole tree).";s:11:"phpdoc_name";s:10:"base_forum";}i:2;a:7:{s:4:"name";s:14:"selected_forum";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:114:"The forum(s) to select by default (null: no preference). An array of AUTO_LINK's (for IDs) or strings (for names).";s:11:"phpdoc_name";s:14:"selected_forum";}i:3;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:120:"Whether to generate a compound list (a list of all the ancesters, for each point in the forum tree) as well as the tree.";s:11:"phpdoc_name";s:17:"use_compound_list";}i:4;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:5;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:32:"create_selection_list_forum_tree";s:11:"description";s:129:"Generate a Tempcode tree based selection list for choosing a forum. Also capable of getting comma-separated ancester forum lists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"Forum selection list.";}}s:18:"cns_get_forum_tree";a:6:{s:8:"filename";s:23:"sources/cns_forums2.php";s:10:"parameters";a:9:{i:0;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:72:"The member that the view privileges are done for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:10:"base_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:62:"The forum we are starting from (null: capture the whole tree).";s:11:"phpdoc_name";s:10:"base_forum";}i:2;a:7:{s:4:"name";s:11:"breadcrumbs";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:69:"The breadcrumbs at this point of the recursion (blank for the start).";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:3;a:7:{s:4:"name";s:4:"skip";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:"ID of a forum to skip display/recursion for (null: none).";s:11:"phpdoc_name";s:4:"skip";}i:4;a:7:{s:4:"name";s:13:"forum_details";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:67:"Details of the current forum in the recursion (null: find from DB).";s:11:"phpdoc_name";s:13:"forum_details";}i:5;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:120:"Whether to generate a compound list (a list of all the ancesters, for each point in the forum tree) as well as the tree.";s:11:"phpdoc_name";s:17:"use_compound_list";}i:6;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:7;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 generate tree statistics.";s:11:"phpdoc_name";s:8:"do_stats";}i:8;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:18:"cns_get_forum_tree";s:11:"description";s:109:"Generate a map of details for choosing a forum. Also capable of getting comma-separated ancester forum lists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:88:"A list of maps, OR (if $use_compound_list) a pair of the Tempcode and the compound list.";}}s:23:"cns_make_forum_grouping";a:6:{s:8:"filename";s:29:"sources/cns_forums_action.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:10:"SHORT_TEXT";s:11:"description";s:32:"The title of the forum grouping.";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:10:"SHORT_TEXT";s:11:"description";s:38:"The description of 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:146:"Whether the forum grouping will be shown expanded by default (as opposed to contracted, where contained forums will not be shown until expansion).";s:11:"phpdoc_name";s:19:"expanded_by_default";}}s:4:"name";s:23:"cns_make_forum_grouping";s:11:"description";s:21:"Add a forum grouping.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:40:"The ID of the forum grouping just added.";}}s:14:"cns_make_forum";a:6:{s:8:"filename";s:29:"sources/cns_forums_action.php";s:10:"parameters";a:14:{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:22:"The name of the forum.";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"The description for the forum.";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:80:"What forum grouping the forum will be filed with (null: this is the root forum).";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:3;a:5:{s:4:"name";s:14:"access_mapping";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:281:"Permission map (null: do it the standard way, outside of this function). This parameter is for import/compatibility only and works upon an emulation of 'access levels' (ala Composr 2.5/2.6), and it is recommended to use the normal crud_module functionality for permissions setting.";s:11:"phpdoc_name";s:14:"access_mapping";}i:4;a:5:{s:4:"name";s:12:"parent_forum";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:58:"The ID of the parent forum (null: this is the root forum).";s:11:"phpdoc_name";s:12:"parent_forum";}i:5;a:7:{s:4:"name";s:8:"position";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:134:"The position of this forum relative to other forums viewable on the same screen (if parent forum hasn't specified automatic ordering).";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:69:"Whether post counts will be incremented if members post in the 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:73:"Whether the ordering of subforums is done automatically, alphabetically).";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:66:"The question that is shown for newbies to the forum (blank: none).";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:10:"SHORT_TEXT";s:11:"description";s:115:"The answer to the question (blank: no specific answer.. if there's a 'question', it just requires a click-through).";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:99:"Either blank for no redirection, the ID of another forum we are mirroring, or a URL to redirect to.";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: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 anonymous posts are allowed";s:11:"phpdoc_name";s:22:"allows_anonymous_posts";}}s:4:"name";s:14:"cns_make_forum";s:11:"description";s:13:"Make a forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the newly created forum.";}}s:23:"cns_edit_forum_grouping";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:44:"The ID of the forum grouping we are editing.";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:32:"The title of the forum grouping.";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The description of the forum grouping.";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:19:"expanded_by_default";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:146:"Whether the forum grouping will be shown expanded by default (as opposed to contracted, where contained forums will not be shown until expansion).";s:11:"phpdoc_name";s:19:"expanded_by_default";}}s:4:"name";s:23:"cns_edit_forum_grouping";s:11:"description";s:22:"Edit a forum grouping.";s:5:"flags";a:0:{}}s:25:"cns_delete_forum_grouping";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:44:"The ID of the forum grouping we are editing.";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:1;a:7:{s:4:"name";s:24:"target_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:96:"The ID of the forum grouping that we will move all the contained forum to (null: the first one).";s:11:"phpdoc_name";s:24:"target_forum_grouping_id";}}s:4:"name";s:25:"cns_delete_forum_grouping";s:11:"description";s:24:"Delete a forum grouping.";s:5:"flags";a:0:{}}s:14:"cns_edit_forum";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:15:{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:35:"The ID of the forum we are editing.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the forum.";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"The description for the forum.";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:49:"What forum grouping the forum will be filed with.";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:4;a:5:{s:4:"name";s:10:"new_parent";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:58:"The ID of the parent forum (null: this is the root forum).";s:11:"phpdoc_name";s:10:"new_parent";}i:5;a:5:{s:4:"name";s:8:"position";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:134:"The position of this forum relative to other forums viewable on the same screen (if parent forum hasn't specified automatic ordering).";s:11:"phpdoc_name";s:8:"position";}i:6;a:5:{s:4:"name";s:20:"post_count_increment";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:69:"Whether post counts will be incremented if members post in the forum.";s:11:"phpdoc_name";s:20:"post_count_increment";}i:7;a:5:{s:4:"name";s:15:"order_sub_alpha";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:73:"Whether the ordering of subforums is done automatically, alphabetically).";s:11:"phpdoc_name";s:15:"order_sub_alpha";}i:8;a:5:{s:4:"name";s:14:"intro_question";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:66:"The question that is shown for newbies to the forum (blank: none).";s:11:"phpdoc_name";s:14:"intro_question";}i:9;a:5:{s:4:"name";s:12:"intro_answer";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:115:"The answer to the question (blank: no specific answer.. if there's a 'question', it just requires a click-through).";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:99:"Either blank for no redirection, the ID of another forum we are mirroring, or a URL to redirect to.";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: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 anonymous posts are allowed";s:11:"phpdoc_name";s:22:"allows_anonymous_posts";}i:14;a:7:{s:4:"name";s:22:"reset_intro_acceptance";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether to force forum rules to be re-agreed to, if they've just been changed.";s:11:"phpdoc_name";s:22:"reset_intro_acceptance";}}s:4:"name";s:14:"cns_edit_forum";s:11:"description";s:13:"Edit a forum.";s:5:"flags";a:0:{}}s:16:"cns_delete_forum";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:3:{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:36:"The ID of the forum we are deleting.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:7:{s:4:"name";s:15:"target_forum_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:68:"The ID of the forum that topics will be moved to (null: root forum).";s:11:"phpdoc_name";s:15:"target_forum_id";}i:2;a:7:{s:4:"name";s:13:"delete_topics";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:68:"Whether to delete topics instead of moving them to the target forum.";s:11:"phpdoc_name";s:13:"delete_topics";}}s:4:"name";s:16:"cns_delete_forum";s:11:"description";s:15:"Delete a forum.";s:5:"flags";a:0:{}}s:23:"cns_ping_forum_read_all";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:23:"cns_ping_forum_read_all";s:11:"description";s:73:"Mark all recent topics in a certain forum as read for the current member.";s:5:"flags";a:0:{}}s:25:"cns_ping_forum_unread_all";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:25:"cns_ping_forum_unread_all";s:11:"description";s:75:"Mark all recent topics in a certain forum as unread for the current member.";s:5:"flags";a:0:{}}s:32:"cns_ensure_forum_grouping_exists";a:5:{s:8:"filename";s:30:"sources/cns_forums_action2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"forum_grouping_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:29:"The ID of the forum grouping.";s:11:"phpdoc_name";s:17:"forum_grouping_id";}}s:4:"name";s:32:"cns_ensure_forum_grouping_exists";s:11:"description";s:55:"Bomb out if the specified forum grouping doesn't exist.";s:5:"flags";a:0:{}}s:23:"cns_ensure_forum_exists";a:6:{s:8:"filename";s:30:"sources/cns_forums_action2.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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:23:"cns_ensure_forum_exists";s:11:"description";s:46:"Bomb out if the specified forum doesn't exist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the forum.";}}s:31:"get_forum_sort_order_simplified";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"_sort";s:7:"default";s:10:"first_post";s:11:"default_raw";s:12:"'first_post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Sort order keyword.";s:11:"phpdoc_name";s:5:"_sort";}}s:4:"name";s:31:"get_forum_sort_order_simplified";s:11:"description";s:53:"Get the active forum sort order from a URL specifier.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:90:"A tuple: Sort order in SQL form, keyset pagination field pattern, keyset pagination field.";}}s:20:"get_forum_sort_order";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:5:"_sort";s:7:"default";s:10:"first_post";s:11:"default_raw";s:12:"'first_post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Sort order keyword.";s:11:"phpdoc_name";s:5:"_sort";}i:1;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:48:"Whether to not include pinning etc in the order.";s:11:"phpdoc_name";s:10:"simplified";}}s:4:"name";s:20:"get_forum_sort_order";s:11:"description";s:53:"Get the active forum sort order from a URL specifier.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:90:"A tuple: Sort order in SQL form, keyset pagination field pattern, keyset pagination field.";}}s:20:"cns_render_forumview";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:32:"Forum ID (null: private topics).";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"forum_info";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:37:"The forum row (null: private topics).";s:11:"phpdoc_name";s:10:"forum_info";}i:2;a:5:{s:4:"name";s:18:"current_filter_cat";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:40:"The filter category (blank if no filter)";s:11:"phpdoc_name";s:18:"current_filter_cat";}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:23:"Maximum results to show";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:25:"Offset for result showing";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:10:"true_start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:49:"True offset when disconsidering keyset pagination";s:11:"phpdoc_name";s:10:"true_start";}i:6;a:5:{s:4:"name";s:7:"sql_sup";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Extra SQL to append for where clause.";s:11:"phpdoc_name";s:7:"sql_sup";}i:7;a:5:{s:4:"name";s:16:"sql_sup_order_by";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"Extra SQL to append as order clause.";s:11:"phpdoc_name";s:16:"sql_sup_order_by";}i:8;a:5:{s:4:"name";s:21:"keyset_field_stripped";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:67:"Keyset field name so that we can extract values from DB result sets";s:11:"phpdoc_name";s:21:"keyset_field_stripped";}i:9;a:5:{s:4:"name";s:4:"root";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"Virtual root";s:11:"phpdoc_name";s:4:"root";}i:10;a:5:{s:4:"name";s:12:"of_member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:71:"The member to show private topics of (null: not showing private topics)";s:11:"phpdoc_name";s:12:"of_member_id";}i:11;a:5:{s:4:"name";s:11:"breadcrumbs";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The breadcrumbs";s:11:"phpdoc_name";s:11:"breadcrumbs";}}s:4:"name";s:20:"cns_render_forumview";s:11:"description";s:30:"Render the Conversr forumview.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:192:"Either Tempcode (an interface that must be shown) or a pair: The main Tempcode, the forum name (string). For a PT view, it is always a tuple, never raw Tempcode (as it can go inside a tabset).";}}s:19:"cns_get_topic_array";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"topic_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"The DB row of the topic.";s:11:"phpdoc_name";s:9:"topic_row";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member the details are being prepared for.";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:20:"hot_topic_definition";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The hot topic definition (taken from the config options).";s:11:"phpdoc_name";s:20:"hot_topic_definition";}i:3;a:5:{s:4:"name";s:8:"involved";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether the viewing member has a post in the topic.";s:11:"phpdoc_name";s:8:"involved";}}s:4:"name";s:19:"cns_get_topic_array";s:11:"description";s:157:"Get details of a topic (to show eventually as a row in a forum or results view). This is a helper function, and thus the interface is not very user friendly.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The details.";}}s:16:"cns_render_topic";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:4:{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:137:"The details (array containing: last_post_id, id, modifiers, emoticon, first_member_id, first_username, first_post, num_posts, num_views).";s:11:"phpdoc_name";s:5:"topic";}i:1;a:5:{s:4:"name";s:17:"has_topic_marking";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:123:"Whether the viewing member has the facility to mark off topics (send as false if there are no actions for them to perform).";s:11:"phpdoc_name";s:17:"has_topic_marking";}i:2;a:7:{s:4:"name";s:2:"pt";s:7:"default";s:13:"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 the topic is a Private Topic.";s:11:"phpdoc_name";s:2:"pt";}i:3;a:7:{s:4:"name";s:10:"show_forum";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:50:"The forum name (null: do not show the forum name).";s:11:"phpdoc_name";s:10:"show_forum";}}s:4:"name";s:16:"cns_render_topic";s:11:"description";s:106:"Render a topic row (i.e. a row in a forum or results view), from given details (from cns_get_topic_array).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The topic row.";}}s:18:"cns_get_forum_view";a:6:{s:8:"filename";s:25:"sources/cns_forumview.php";s:10:"parameters";a:7:{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:13:"The forum ID.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:10:"forum_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The forum row.";s:11:"phpdoc_name";s:10:"forum_info";}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:117:"The start row for getting details of topics in the forum (i.e. 0 is newest, higher is starting further back in time).";s:11:"phpdoc_name";s:5:"start";}i:3;a:7:{s:4:"name";s:10:"true_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:49:"True offset when disconsidering keyset pagination";s:11:"phpdoc_name";s:10:"true_start";}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:62:"The maximum number of topics to get detail of (null: default).";s:11:"phpdoc_name";s:3:"max";}i:5;a:7:{s:4:"name";s:7:"sql_sup";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:20:"Extra SQL to append.";s:11:"phpdoc_name";s:7:"sql_sup";}i:6;a:7:{s:4:"name";s:16:"sql_sup_order_by";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:36:"Extra SQL to append as order clause.";s:11:"phpdoc_name";s:16:"sql_sup_order_by";}}s:4:"name";s:18:"cns_get_forum_view";s:11:"description";s:81:"Get a map of details relating to the view of a certain forum of a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The details.";}}s:22:"cns_get_private_topics";a:6:{s:8:"filename";s:28:"sources/cns_forumview_pt.php";s:10:"parameters";a:6:{i:0;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:131:"The start row for getting details of topics in the Private Topic forum (i.e. 0 is newest, higher is starting further back in time).";s:11:"phpdoc_name";s:5:"start";}i:1;a:7:{s:4:"name";s:10:"true_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:49:"True offset when disconsidering keyset pagination";s:11:"phpdoc_name";s:10:"true_start";}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:62:"The maximum number of topics to get detail of (null: default).";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:7:"sql_sup";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:20:"Extra SQL to append.";s:11:"phpdoc_name";s:7:"sql_sup";}i:4;a:7:{s:4:"name";s:16:"sql_sup_order_by";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:36:"Extra SQL to append as order clause.";s:11:"phpdoc_name";s:16:"sql_sup_order_by";}i:5;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:59:"The member to get Private Topics of (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_get_private_topics";s:11:"description";s:72:"Get a map of details relating to the Private Topics of a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The details.";}}s:17:"init__cns_general";a:5:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__cns_general";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:20:"cns_get_forums_stats";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"cns_get_forums_stats";s:11:"description";s:21:"Get some forum stats.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"A map of forum stats.";}}s:26:"cns_read_in_member_profile";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:2:{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:29:"The member to get details of.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:4:"lite";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether to get a 'lite' version (contains less detail, therefore less costly).";s:11:"phpdoc_name";s:4:"lite";}}s:4:"name";s:26:"cns_read_in_member_profile";s:11:"description";s:32:"Get details on a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"A map of details.";}}s:16:"get_member_title";a:6:{s:8:"filename";s:23:"sources/cns_general.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:10:"Member ID.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:16:"get_member_title";s:11:"description";s:19:"Get a member title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"Member title.";}}s:16:"get_group_colour";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"gid";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:10:"ID number.";s:11:"phpdoc_name";s:3:"gid";}}s:4:"name";s:16:"get_group_colour";s:11:"description";s:46:"Get a usergroup colour based on its ID number.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Colour.";}}s:18:"cns_find_birthdays";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:1:{i:0;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:56:"A timestamps that exists in the certain day (null: now).";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:18:"cns_find_birthdays";s:11:"description";s:40:"Find all the birthdays in a certain day.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"List of maps describing the members whose birthday it is on the certain day.";}}s:22:"cns_button_screen_wrap";a:6:{s:8:"filename";s:23:"sources/cns_general.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"buttons";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:50:"List of maps (each map contains: url, img, title).";s:11:"phpdoc_name";s:7:"buttons";}}s:4:"name";s:22:"cns_button_screen_wrap";s:11:"description";s:69:"Turn a list of maps describing buttons, into a Tempcode button panel.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The button panel.";}}s:21:"cns_set_context_forum";a:5:{s:8:"filename";s:23:"sources/cns_general.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:9:"Forum ID.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:21:"cns_set_context_forum";s:11:"description";s:22:"Set the forum context.";s:5:"flags";a:0:{}}s:22:"cns_make_post_template";a:6:{s:8:"filename";s:30:"sources/cns_general_action.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:10:"SHORT_TEXT";s:11:"description";s:27:"The title for the template.";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"The text of the template.";s:11:"phpdoc_name";s:4:"text";}i:2;a:5:{s:4:"name";s:16:"forum_multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:61:"The multi code specifying which forums this is applicable in.";s:11:"phpdoc_name";s:16:"forum_multi_code";}i:3;a:5:{s:4:"name";s:18:"use_default_forums";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether to use this as the default post in applicable forum.";s:11:"phpdoc_name";s:18:"use_default_forums";}}s:4:"name";s:22:"cns_make_post_template";s:11:"description";s:21:"Make a post template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The added ID";}}s:17:"cns_make_emoticon";a:5:{s:8:"filename";s:30:"sources/cns_general_action.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:53:"The textual code entered to make the emoticon appear.";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:14:"theme_img_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The image code used for the emoticon.";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:50:"The relevance level. 0 is core, shown immediately.";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:45:"Whether this may be used 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:17:"cns_make_emoticon";s:11:"description";s:17:"Make an emoticon.";s:5:"flags";a:0:{}}s:22:"cns_make_welcome_email";a:6:{s:8:"filename";s:30:"sources/cns_general_action.php";s:10:"parameters";a:7:{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:29:"A name for the Welcome E-mail";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:7:"subject";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:5:{s:4:"name";s:4:"text";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:5:{s:4:"name";s:9:"send_time";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:22:"cns_make_welcome_email";s:11:"description";s:22:"Make a Welcome E-mail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:22:"cns_edit_post_template";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:36:"The ID of the post template to edit.";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:27:"The title for the template.";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"The text of the template.";s:11:"phpdoc_name";s:4:"text";}i:3;a:5:{s:4:"name";s:16:"forum_multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:61:"The multi code specifying which forums this is applicable in.";s:11:"phpdoc_name";s:16:"forum_multi_code";}i:4;a:5:{s:4:"name";s:18:"use_default_forums";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether to use this as the default post in applicable forum.";s:11:"phpdoc_name";s:18:"use_default_forums";}}s:4:"name";s:22:"cns_edit_post_template";s:11:"description";s:21:"Edit a post template.";s:5:"flags";a:0:{}}s:24:"cns_delete_post_template";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:38:"The ID of the post template to delete.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:24:"cns_delete_post_template";s:11:"description";s:23:"Delete a post template.";s:5:"flags";a:0:{}}s:23:"import_custom_emoticons";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:15:"remove_old_core";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Make some of the old core emoticons non-core (level 1).";s:11:"phpdoc_name";s:15:"remove_old_core";}}s:4:"name";s:23:"import_custom_emoticons";s:11:"description";s:139:"Utility function to import custom emoticons.Not used by default, but useful when coding projects to do hot-changes to a separate live site.";s:5:"flags";a:0:{}}s:17:"cns_edit_emoticon";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"old_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:53:"The textual code entered to make the emoticon appear.";s:11:"phpdoc_name";s:8:"old_code";}i:1;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"The old textual code.";s:11:"phpdoc_name";s:4:"code";}i:2;a:5:{s:4:"name";s:14:"theme_img_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The image code used for the emoticon.";s:11:"phpdoc_name";s:14:"theme_img_code";}i:3;a:6:{s:4:"name";s:15:"relevance_level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"The relevance level.";s:11:"phpdoc_name";s:15:"relevance_level";s:5:"range";s:3:"0 4";}i:4;a:5:{s:4:"name";s:10:"use_topics";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:45:"Whether this may be used as a topic emoticon.";s:11:"phpdoc_name";s:10:"use_topics";}i:5;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:17:"cns_edit_emoticon";s:11:"description";s:17:"Edit an emoticon.";s:5:"flags";a:0:{}}s:19:"cns_delete_emoticon";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:10:"SHORT_TEXT";s:11:"description";s:33:"The ID of the emoticon to delete.";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:19:"cns_delete_emoticon";s:11:"description";s:19:"Delete an emoticon.";s:5:"flags";a:0:{}}s:22:"cns_edit_welcome_email";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:6:"The 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:10:"SHORT_TEXT";s:11:"description";s:29:"A name for the Welcome E-mail";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:7:"subject";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:3;a:5:{s:4:"name";s:4:"text";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:4;a:5:{s:4:"name";s:9:"send_time";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:5;a:5:{s:4:"name";s:10:"newsletter";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:6;a:5:{s:4:"name";s:9:"usergroup";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:7;a:6:{s:4:"name";s:14:"usergroup_type";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:17:"primary secondary";}}s:4:"name";s:22:"cns_edit_welcome_email";s:11:"description";s:22:"Edit a Welcome E-mail.";s:5:"flags";a:0:{}}s:24:"cns_delete_welcome_email";a:5:{s:8:"filename";s:31:"sources/cns_general_action2.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:24:"cns_delete_welcome_email";s:11:"description";s:24:"Delete a Welcome E-mail.";s:5:"flags";a:0:{}}s:30:"cns_get_forum_multi_code_field";a:6:{s:8:"filename";s:31:"sources/cns_general_action2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:16:"forum_multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The multi code.";s:11:"phpdoc_name";s:16:"forum_multi_code";}}s:4:"name";s:30:"cns_get_forum_multi_code_field";s:11:"description";s:101:"Get a form field for editing a forum multi code, set up with a default of the given forum multi code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The form field.";}}s:14:"cns_mod_log_it";a:6:{s:8:"filename";s:31:"sources/cns_general_action2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"the_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The type of moderation.";s:11:"phpdoc_name";s:8:"the_type";}i:1;a:7:{s:4:"name";s:7:"param_a";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:"First detailing parameter.";s:11:"phpdoc_name";s:7:"param_a";}i:2;a:7:{s:4:"name";s:7:"param_b";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:"Second detailing parameter.";s:11:"phpdoc_name";s:7:"param_b";}i:3;a:7:{s:4:"name";s:6:"reason";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:45:"The reason for the moderation (may be blank).";s:11:"phpdoc_name";s:6:"reason";}i:4;a:7:{s:4:"name";s:2:"by";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:60:"The member performing the moderation (null: current member).";s:11:"phpdoc_name";s:2:"by";}i:5;a:7:{s:4:"name";s:13:"date_and_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:44:"The time of the moderation (null: just now).";s:11:"phpdoc_name";s:13:"date_and_time";}}s:4:"name";s:14:"cns_mod_log_it";s:11:"description";s:24:"Log a moderation action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The log ID.";}}s:16:"init__cns_groups";a:5:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__cns_groups";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"render_group_box";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:4:{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:13:"Usergroup row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_group_box";s:11:"description";s:23:"Render a usergroup box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The usergroup box";}}s:36:"cns_create_selection_list_usergroups";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:58:"Usergroup selected by default (null: no specific default).";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:17:"allow_guest_group";s:7:"default";s:12:"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:"Allow the guest usergroup to be in the list.";s:11:"phpdoc_name";s:17:"allow_guest_group";}}s:4:"name";s:36:"cns_create_selection_list_usergroups";s:11:"description";s:110:"Get a nice list for selection from the usergroups. Suitable for admin use only (does not check hidden status).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The list.";}}s:23:"get_first_default_group";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_first_default_group";s:11:"description";s:29:"Find the first default group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:24:"The first default group.";}}s:26:"cns_get_all_default_groups";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:15:"include_primary";s:7:"default";s:13:"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 to include the default primary (at the end of the list).";s:11:"phpdoc_name";s:15:"include_primary";}i:1;a:7:{s:4:"name";s:37:"include_all_configured_default_groups";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:248:"The functionality does not usually consider configured default groups [unless there's just one], because this is a layer of uncertainity (the user PICKS one of these). If you want to return all configured default groups, set this parameter to true.";s:11:"phpdoc_name";s:37:"include_all_configured_default_groups";}}s:4:"name";s:26:"cns_get_all_default_groups";s:11:"description";s:88:"Get a list of the default usergroups (the usergroups a member is put in when they join).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"The list of default IDs.";}}s:24:"cns_ensure_groups_cached";a:5:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The list of usergroups (array) or '*'.";s:11:"phpdoc_name";s:6:"groups";}}s:4:"name";s:24:"cns_ensure_groups_cached";s:11:"description";s:49:"Ensure a list of usergroups are cached in memory.";s:5:"flags";a:0:{}}s:18:"cns_get_group_link";a:6:{s:8:"filename";s:22:"sources/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:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"hide_hidden";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to hide the name if it is a hidden group.";s:11:"phpdoc_name";s:11:"hide_hidden";}}s:4:"name";s:18:"cns_get_group_link";s:11:"description";s:35:"Get a rendered link to a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The link.";}}s:18:"cns_get_group_name";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"group";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:5:"group";}i:1;a:7:{s:4:"name";s:11:"hide_hidden";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to hide the name if it is a hidden group.";s:11:"phpdoc_name";s:11:"hide_hidden";}}s:4:"name";s:18:"cns_get_group_name";s:11:"description";s:21:"Get a usergroup name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The usergroup name.";}}s:22:"cns_get_group_property";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"group";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:5:"group";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The identifier of the property.";s:11:"phpdoc_name";s:8:"property";}i:2;a:7:{s:4:"name";s:11:"hide_hidden";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to hide the name if it is a hidden group.";s:11:"phpdoc_name";s:11:"hide_hidden";}}s:4:"name";s:22:"cns_get_group_property";s:11:"description";s:36:"Get a certain property of a certain.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:19:"The property value.";}}s:34:"cns_get_member_best_group_property";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{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:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The identifier of the property.";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:34:"cns_get_member_best_group_property";s:11:"description";s:106:"Get the best value of all values of a property for a member (due to members being in multiple usergroups).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:19:"The property value.";}}s:27:"cns_get_best_group_property";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:2:{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 list of usergroups.";s:11:"phpdoc_name";s:6:"groups";}i:1;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The identifier of the property.";s:11:"phpdoc_name";s:8:"property";}}s:4:"name";s:27:"cns_get_best_group_property";s:11:"description";s:72:"Get the best value of all values of a property for a list of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:80:"The best property value ('best' is dependant on the property we are looking at).";}}s:22:"cns_get_members_groups";a:6:{s:8:"filename";s:22:"sources/cns_groups.php";s:10:"parameters";a:4:{i:0;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:60:"The member to find the usergroups of (null: current member).";s:11:"phpdoc_name";s:9:"member_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";}i:3;a:7:{s:4:"name";s:16:"include_implicit";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether to include implicit groups";s:11:"phpdoc_name";s:16:"include_implicit";}}s:4:"name";s:22:"cns_get_members_groups";s:11:"description";s:93:"Get a list of the usergroups a member is in (keys say the usergroups, values are irrelevant).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:74:"Reverse list (e.g. array(1=>true,2=>true,3=>true) for someone in (1,2,3)).";}}s:17:"find_usergroup_id";a:6:{s:8:"filename";s:22:"sources/cns_groups.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:10:"SHORT_TEXT";s:11:"description";s:10:"The title.";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:17:"find_usergroup_id";s:11:"description";s:176:"Get the ID for a usergroup if we only know the title. Warning: Only use this with custom code, never core code! It assumes a single language and that usergroups aren't renamed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The ID (null: could not find).";}}s:31:"cns_get_group_members_raw_count";a:6:{s:8:"filename";s:23:"sources/cns_groups2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:7:{s:4:"name";s:17:"include_primaries";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to include those in the as a primary member.";s:11:"phpdoc_name";s:17:"include_primaries";}i:2;a:7:{s:4:"name";s:13:"non_validated";s:7:"default";s:13:"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 to include those applied to join the, but not validated in.";s:11:"phpdoc_name";s:13:"non_validated";}i:3;a:7:{s:4:"name";s:19:"include_secondaries";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to include those in the as a secondary member.";s:11:"phpdoc_name";s:19:"include_secondaries";}i:4;a:7:{s:4:"name";s:27:"include_unvalidated_members";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:112:"Whether to include those members who are not validated as site members at all yet (parameter currently ignored).";s:11:"phpdoc_name";s:27:"include_unvalidated_members";}}s:4:"name";s:31:"cns_get_group_members_raw_count";s:11:"description";s:77:"Get a count of members in a (or more full details if $non_validated is true).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:10:"The count.";}}s:25:"cns_get_group_members_raw";a:6:{s:8:"filename";s:23:"sources/cns_groups2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:20:"The ID of the group.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:7:{s:4:"name";s:17:"include_primaries";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to include those in the as a primary member.";s:11:"phpdoc_name";s:17:"include_primaries";}i:2;a:7:{s:4:"name";s:13:"non_validated";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:122:"Whether to include those applied to join the, but not validated in (also causes it to return maps that contain this info).";s:11:"phpdoc_name";s:13:"non_validated";}i:3;a:7:{s:4:"name";s:19:"include_secondaries";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to include those in the as a secondary member.";s:11:"phpdoc_name";s:19:"include_secondaries";}i:4;a:7:{s:4:"name";s:27:"include_unvalidated_members";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:112:"Whether to include those members who are not validated as site members at all yet (parameter currently ignored).";s:11:"phpdoc_name";s:27:"include_unvalidated_members";}i:5;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:191:"Return up to this many entries for primary members and this many entries for secondary members and all LDAP members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:6;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:25:"cns_get_group_members_raw";s:11:"description";s:76:"Get a list of members in a (or more full details if $non_validated is true).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:9:"The list.";}}s:14:"cns_make_group";a:6:{s:8:"filename";s:29:"sources/cns_groups_action.php";s:10:"parameters";a:28:{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:26:"The name of the usergroup.";s:11:"phpdoc_name";s:4:"name";}i:1;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:62:"Whether members are automatically put into the when they join.";s:11:"phpdoc_name";s:10:"is_default";}i:2;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:63:"Whether members of this usergroup are all super administrators.";s:11:"phpdoc_name";s:14:"is_super_admin";}i:3;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:59:"Whether members of this usergroup are all super moderators.";s:11:"phpdoc_name";s:18:"is_super_moderator";}i:4;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:80:"The title for primary members of this usergroup that don't have their own title.";s:11:"phpdoc_name";s:5:"title";}i:5;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 rank image for this.";s:11:"phpdoc_name";s:10:"rank_image";}i:6;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:101:"The that members of this usergroup get promoted to at point threshold (null: no promotion prospects).";s:11:"phpdoc_name";s:16:"promotion_target";}i:7;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:65:"The point threshold for promotion (null: no promotion prospects).";s:11:"phpdoc_name";s:19:"promotion_threshold";}i:8;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:7:"?MEMBER";s:11:"description";s:42:"The leader of this usergroup (null: none).";s:11:"phpdoc_name";s:12:"group_leader";}i:9;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:160:"The number of seconds that members of this usergroup must endure between submits (group 'best of' applies). 0 means N/A. (null: average for existing usergroups)";s:11:"phpdoc_name";s:25:"flood_control_submit_secs";}i:10;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:161:"The number of seconds that members of this usergroup must endure between accesses (group 'best of' applies). 0 means N/A. (null: average for existing usergroups)";s:11:"phpdoc_name";s:25:"flood_control_access_secs";}i:11;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:140:"The number of megabytes that members of this usergroup may attach per day (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:19:"max_daily_upload_mb";}i:12;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:147:"The number of attachments that members of this usergroup may attach to something (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:24:"max_attachments_per_post";}i:13;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:131:"The maximum avatar width that members of this usergroup may have (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:16:"max_avatar_width";}i:14;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:132:"The maximum avatar height that members of this usergroup may have (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:17:"max_avatar_height";}i:15;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:130:"The maximum post length that members of this usergroup may make (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:23:"max_post_length_comcode";}i:16;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:135:"The maximum signature length that members of this usergroup may make (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:22:"max_sig_length_comcode";}i:17;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:134:"The number of gift points that members of this usergroup start with (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:16:"gift_points_base";}i:18;a:7:{s:4:"name";s:19:"gift_points_per_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:135:"The number of gift points that members of this usergroup get per day (group 'best of' applies). (null: average for existing usergroups)";s:11:"phpdoc_name";s:19:"gift_points_per_day";}i:19;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:123:"Whether e-mail confirmation is needed for new IP addresses seen for any member of this usergroup (group 'best of' applies).";s:11:"phpdoc_name";s:18:"enquire_on_new_ips";}i:20;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:119:"Whether the usergroup is presented for joining at joining (implies anyone may be in the, but only choosable at joining)";s:11:"phpdoc_name";s:23:"is_presented_at_install";}i:21;a:7:{s:4:"name";s:6:"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:48:"Whether the name and membership of the is hidden";s:11:"phpdoc_name";s:6:"hidden";}i:22;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:149:"The display order this will be given, relative to other usergroups. Lower numbered usergroups display before higher numbered usergroups (null: next).";s:11:"phpdoc_name";s:5:"order";}i:23;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:24;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:25;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";}i:26;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to force the title as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}i:27;a:7:{s:4:"name";s:22:"comes_with_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:41:"Whether permissions should be auto-copied";s:11:"phpdoc_name";s:22:"comes_with_permissions";}}s:4:"name";s:14:"cns_make_group";s:11:"description";s:16:"Add a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:18:"The ID of the new.";}}s:21:"cns_may_control_group";a:6:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:14:"The usergroup.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:21:"cns_may_control_group";s:11:"description";s:62:"Find whether a certain member may control a certain usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:14:"cns_edit_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:28:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:32:"The ID of the usergroup to edit.";s:11:"phpdoc_name";s:8:"group_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:48:"The name of the usergroup. (null: do not change)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:10:"is_default";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:84:"Whether members are automatically put into the when they join. (null: do not change)";s:11:"phpdoc_name";s:10:"is_default";}i:3;a:5:{s:4:"name";s:14:"is_super_admin";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:85:"Whether members of this usergroup are all super administrators. (null: do not change)";s:11:"phpdoc_name";s:14:"is_super_admin";}i:4;a:5:{s:4:"name";s:18:"is_super_moderator";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether members of this usergroup are all super moderators. (null: do not change)";s:11:"phpdoc_name";s:18:"is_super_moderator";}i:5;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:102:"The title for primary members of this usergroup that don't have their own title. (null: do not change)";s:11:"phpdoc_name";s:5:"title";}i:6;a:5:{s:4:"name";s:10:"rank_image";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:46:"The rank image for this. (null: do not change)";s:11:"phpdoc_name";s:10:"rank_image";}i:7;a:5:{s:4:"name";s:16:"promotion_target";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:101:"The that members of this usergroup get promoted to at point threshold (null: no promotion prospects).";s:11:"phpdoc_name";s:16:"promotion_target";}i:8;a:5:{s:4:"name";s:19:"promotion_threshold";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:65:"The point threshold for promotion (null: no promotion prospects).";s:11:"phpdoc_name";s:19:"promotion_threshold";}i:9;a:5:{s:4:"name";s:12:"group_leader";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:42:"The leader of this usergroup (null: none).";s:11:"phpdoc_name";s:12:"group_leader";}i:10;a:5:{s:4:"name";s:25:"flood_control_submit_secs";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:129:"The number of seconds that members of this usergroup must endure between submits (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:25:"flood_control_submit_secs";}i:11;a:5:{s:4:"name";s:25:"flood_control_access_secs";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:130:"The number of seconds that members of this usergroup must endure between accesses (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:25:"flood_control_access_secs";}i:12;a:5:{s:4:"name";s:19:"max_daily_upload_mb";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:122:"The number of megabytes that members of this usergroup may attach per day (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:19:"max_daily_upload_mb";}i:13;a:5:{s:4:"name";s:24:"max_attachments_per_post";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:129:"The number of attachments that members of this usergroup may attach to something (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:24:"max_attachments_per_post";}i:14;a:5:{s:4:"name";s:16:"max_avatar_width";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:113:"The maximum avatar width that members of this usergroup may have (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:16:"max_avatar_width";}i:15;a:5:{s:4:"name";s:17:"max_avatar_height";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:114:"The maximum avatar height that members of this usergroup may have (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:17:"max_avatar_height";}i:16;a:5:{s:4:"name";s:23:"max_post_length_comcode";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:112:"The maximum post length that members of this usergroup may make (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:23:"max_post_length_comcode";}i:17;a:5:{s:4:"name";s:22:"max_sig_length_comcode";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:117:"The maximum signature length that members of this usergroup may make (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:22:"max_sig_length_comcode";}i:18;a:5:{s:4:"name";s:16:"gift_points_base";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:116:"The number of gift points that members of this usergroup start with (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:16:"gift_points_base";}i:19;a:5:{s:4:"name";s:19:"gift_points_per_day";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:117:"The number of gift points that members of this usergroup get per day (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:19:"gift_points_per_day";}i:20;a:5:{s:4:"name";s:18:"enquire_on_new_ips";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:145:"Whether e-mail confirmation is needed for new IP addresses seen for any member of this usergroup (group 'best of' applies). (null: do not change)";s:11:"phpdoc_name";s:18:"enquire_on_new_ips";}i:21;a:5:{s:4:"name";s:23:"is_presented_at_install";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:131:"Whether the is presented for joining at joining (implies anyone may be in the, but only choosable at joining) (null: do not change)";s:11:"phpdoc_name";s:23:"is_presented_at_install";}i:22;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:70:"Whether the name and membership of the is hidden (null: do not change)";s:11:"phpdoc_name";s:6:"hidden";}i:23;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:158:"The display order this will be given, relative to other usergroups. Lower numbered usergroups display before higher numbered usergroups. (null: do not change)";s:11:"phpdoc_name";s:5:"order";}i:24;a:5:{s:4:"name";s:19:"rank_image_pri_only";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:87:"Whether the rank image will not be shown for secondary membership (null: do not change)";s:11:"phpdoc_name";s:19:"rank_image_pri_only";}i:25;a:5:{s:4:"name";s:15:"open_membership";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:102:"Whether members may join this usergroup without requiring any special permission (null: do not change)";s:11:"phpdoc_name";s:15:"open_membership";}i:26;a:5:{s:4:"name";s:15:"is_private_club";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:191:"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. (null: do not change)";s:11:"phpdoc_name";s:15:"is_private_club";}i:27;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to force the title as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:14:"cns_edit_group";s:11:"description";s:17:"Edit a usergroup.";s:5:"flags";a:0:{}}s:16:"cns_delete_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the usergroup to delete.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:7:{s:4:"name";s:12:"target_group";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:62:"The usergroup to move primary members to (null: main members).";s:11:"phpdoc_name";s:12:"target_group";}}s:4:"name";s:16:"cns_delete_group";s:11:"description";s:19:"Delete a usergroup.";s:5:"flags";a:0:{}}s:25:"cns_member_ask_join_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:26:"The usergroup to apply to.";s:11:"phpdoc_name";s:8:"group_id";}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:43:"The member applying (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:25:"cns_member_ask_join_group";s:11:"description";s:68:"Mark a member as applying to be in a certain, and inform the leader.";s:5:"flags";a:0:{}}s:22:"cns_member_leave_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:29:"The usergroup to remove from.";s:11:"phpdoc_name";s:8:"group_id";}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:42:"The member leaving (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_member_leave_group";s:11:"description";s:41:"Remove a member from a certain usergroup.";s:5:"flags";a:0:{}}s:23:"cns_add_member_to_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:3:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:14:"The usergroup.";s:11:"phpdoc_name";s:2:"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:51:"Whether the member is validated into the usergroup.";s:11:"phpdoc_name";s:9:"validated";}}s:4:"name";s:23:"cns_add_member_to_group";s:11:"description";s:36:"Add a member to a certain usergroup.";s:5:"flags";a:0:{}}s:30:"cns_member_validate_into_group";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:14:"The usergroup.";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:5:{s:4:"name";s:21:"prospective_member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:23:"The prospective member.";s:11:"phpdoc_name";s:21:"prospective_member_id";}i:2;a:7:{s:4:"name";s:7:"decline";s:7:"default";s:13:"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 the member is being declined membership.";s:11:"phpdoc_name";s:7:"decline";}i:3;a:7:{s:4:"name";s:6:"reason";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:31:"The reason given for declining.";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:30:"cns_member_validate_into_group";s:11:"description";s:96:"Set whether a member that has applied to be in a, may be in it, and inform them of the decision.";s:5:"flags";a:0:{}}s:30:"cns_group_absorb_privileges_of";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:44:"The that is having its permissions replaced.";s:11:"phpdoc_name";s:2:"to";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:46:"The that the permissions are being drawn from.";s:11:"phpdoc_name";s:4:"from";}}s:4:"name";s:30:"cns_group_absorb_privileges_of";s:11:"description";s:45:"Copy permissions relating to one, to another.";s:5:"flags";a:0:{}}s:31:"_cns_group_absorb_privileges_of";a:5:{s:8:"filename";s:30:"sources/cns_groups_action2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:44:"The that is having its permissions replaced.";s:11:"phpdoc_name";s:2:"to";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:46:"The that the permissions are being drawn from.";s:11:"phpdoc_name";s:4:"from";}i:2;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"The table holding the permissions.";s:11:"phpdoc_name";s:5:"table";}i:3;a:7:{s:4:"name";s:2:"id";s:7:"default";s:8:"group_id";s:11:"default_raw";s:10:"'group_id'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"The name of the field in the table that holds the ID.";s:11:"phpdoc_name";s:2:"id";}i:4;a:7:{s:4:"name";s:3:"cns";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:68:"Whether the operation is being carried out over the Conversr driver.";s:11:"phpdoc_name";s:3:"cns";}}s:4:"name";s:31:"_cns_group_absorb_privileges_of";s:11:"description";s:66:"Helper function, for copy permissions relating to one, to another.";s:5:"flags";a:0:{}}s:17:"init__cns_install";a:5:{s:8:"filename";s:23:"sources/cns_install.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__cns_install";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:13:"uninstall_cns";a:5:{s:8:"filename";s:23:"sources/cns_install.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"uninstall_cns";s:11:"description";s:18:"Uninstall Conversr";s:5:"flags";a:0:{}}s:11:"install_cns";a:5:{s:8:"filename";s:23:"sources/cns_install.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:6:"?float";s:11:"description";s:50:"The version to upgrade from (null: fresh install).";s:11:"phpdoc_name";s:12:"upgrade_from";}}s:4:"name";s:11:"install_cns";s:11:"description";s:25:"Install/upgrade Conversr.";s:5:"flags";a:0:{}}s:21:"check_joining_allowed";a:5:{s:8:"filename";s:20:"sources/cns_join.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"check_joining_allowed";s:11:"description";s:60:"Give error if Conversr-joining is not possible on this site.";s:5:"flags";a:0:{}}s:13:"cns_join_form";a:6:{s:8:"filename";s:20:"sources/cns_join.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:8:"Tempcode";s:11:"description";s:16:"URL to direct to";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:18:"captcha_if_enabled";s:7:"default";s:12:"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 to handle CAPTCHA (if enabled at all)";s:11:"phpdoc_name";s:18:"captcha_if_enabled";}i:2;a:7:{s:4:"name";s:24:"intro_message_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to ask for intro messages (if enabled at all)";s:11:"phpdoc_name";s:24:"intro_message_if_enabled";}i:3;a:7:{s:4:"name";s:18:"invites_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to check for invites (if enabled at all)";s:11:"phpdoc_name";s:18:"invites_if_enabled";}i:4;a:7:{s:4:"name";s:32:"one_per_email_address_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to check email-address restrictions (if enabled at all)";s:11:"phpdoc_name";s:32:"one_per_email_address_if_enabled";}}s:4:"name";s:13:"cns_join_form";s:11:"description";s:18:"Get the join form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:44:"A tuple: Necessary JavaScript code, the form";}}s:15:"cns_join_actual";a:6:{s:8:"filename";s:20:"sources/cns_join.php";s:10:"parameters";a:12:{i:0;a:7:{s:4:"name";s:18:"captcha_if_enabled";s:7:"default";s:12:"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 to handle CAPTCHA (if enabled at all)";s:11:"phpdoc_name";s:18:"captcha_if_enabled";}i:1;a:7:{s:4:"name";s:24:"intro_message_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to ask for intro messages (if enabled at all)";s:11:"phpdoc_name";s:24:"intro_message_if_enabled";}i:2;a:7:{s:4:"name";s:18:"invites_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to check for invites (if enabled at all)";s:11:"phpdoc_name";s:18:"invites_if_enabled";}i:3;a:7:{s:4:"name";s:32:"one_per_email_address_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to check email-address restrictions (if enabled at all)";s:11:"phpdoc_name";s:32:"one_per_email_address_if_enabled";}i:4;a:7:{s:4:"name";s:27:"email_validation_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to require email address validation (if enabled at all)";s:11:"phpdoc_name";s:27:"email_validation_if_enabled";}i:5;a:7:{s:4:"name";s:27:"staff_validation_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to force staff validation (if enabled at all)";s:11:"phpdoc_name";s:27:"staff_validation_if_enabled";}i:6;a:7:{s:4:"name";s:16:"coppa_if_enabled";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether to do COPPA checks (if enabled at all)";s:11:"phpdoc_name";s:16:"coppa_if_enabled";}i:7;a:7:{s:4:"name";s:13:"instant_login";s:7:"default";s:12:"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 instantly log the user in";s:11:"phpdoc_name";s:13:"instant_login";}i:8;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:8:"?ID_TEXT";s:11:"description";s:38:"Username (null: read from environment)";s:11:"phpdoc_name";s:8:"username";}i:9;a:7:{s:4:"name";s:13:"email_address";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?EMAIL";s:11:"description";s:44:"E-mail address (null: read from environment)";s:11:"phpdoc_name";s:13:"email_address";}i:10;a:7:{s:4:"name";s:8:"password";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:"Password (null: read from environment)";s:11:"phpdoc_name";s:8:"password";}i:11;a:7:{s:4:"name";s:20:"actual_custom_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:51:"Custom fields to save (null: read from environment)";s:11:"phpdoc_name";s:20:"actual_custom_fields";}}s:4:"name";s:15:"cns_join_actual";s:11:"description";s:24:"Actualise the join form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:50:"A tuple: Messages to show, member ID of new member";}}s:14:"init__cns_ldap";a:5:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__cns_ldap";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"cms_ldap_escape";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:10:"The value.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:6:"for_dn";s:7:"default";s:13:"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 this is for use in a DN string.";s:11:"phpdoc_name";s:6:"for_dn";}}s:4:"name";s:15:"cms_ldap_escape";s:11:"description";s:32:"Escape, ready for an LDAP query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped value.";}}s:13:"ldap_unescape";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{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:18:"The escaped value.";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:13:"ldap_unescape";s:11:"description";s:216:"Unescape data from LDAP. Technically this is not unescaping, it's just a character set conversion, but function is named to provide symmetry with cms_ldap_escape which does both escaping and character set conversion.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The value.";}}s:16:"cns_ldap_connect";a:5:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"cns_ldap_connect";s:11:"description";s:36:"Set up the Conversr LDAP connection.";s:5:"flags";a:0:{}}s:23:"member_search_qualifier";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"member_search_qualifier";s:11:"description";s:49:"Where in the LDAP hierarchy to search for groups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:15:"member_property";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"member_property";s:11:"description";s:37:"The property in LDAP used for logins.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:16:"get_member_class";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_member_class";s:11:"description";s:37:"The LDAP class indicating an account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:22:"group_search_qualifier";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"group_search_qualifier";s:11:"description";s:50:"Where in the LDAP hierarchy to search for members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:14:"group_property";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"group_property";s:11:"description";s:45:"The group naming property LDAP will be using.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:15:"get_group_class";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_group_class";s:11:"description";s:34:"The LDAP class indicating a group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The property.";}}s:22:"get_mapped_users_group";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_mapped_users_group";s:11:"description";s:54:"The LDAP group that maps to the default Composr group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The group.";}}s:22:"get_mapped_admin_group";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_mapped_admin_group";s:11:"description";s:92:"The LDAP group that maps to the first administrative group in Composr (db_get_first_id()+1).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The group.";}}s:28:"cns_is_ldap_member_potential";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:28:"cns_is_ldap_member_potential";s:11:"description";s:137:"Find whether a member of a certain username WOULD be bound to LDAP authentication (an exceptional situation, only for sites that use it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:13:"cns_ldap_bind";a:5:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"cns_ldap_bind";s:11:"description";s:91:"Performs the Conversr LDAP connection bind, used to do general querying (not a user login).";s:5:"flags";a:0:{}}s:14:"cns_is_on_ldap";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:14:"cns_is_on_ldap";s:11:"description";s:48:"Find whether a member exists on the LDAP server.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:17:"cns_get_ldap_hash";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:17:"cns_get_ldap_hash";s:11:"description";s:52:"Find the LDAP servers password for a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:34:"The password (null: no such user).";}}s:13:"cns_ldap_hash";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:82:"The username (we use this to extract the hash algorithm being used by the member).";s:11:"phpdoc_name";s:2:"cn";}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:13:"The password.";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:13:"cns_ldap_hash";s:11:"description";s:53:"Convert a plain-text password into a hashed password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The hashed password.";}}s:21:"ldap_get_login_string";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:21:"ldap_get_login_string";s:11:"description";s:46:"Get an LDAP login string to do a bind against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The login string.";}}s:24:"cns_ldap_authorise_login";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}i:1;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:34:"The password (null: no such user).";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:24:"cns_ldap_authorise_login";s:11:"description";s:24:"Authorise an LDAP login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:128:"Part of the member row to put back in and authorise normally (hackerish, but it works kind of like a filter / stage in a chain).";}}s:26:"cns_member_ldapcn_to_cnsid";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:26:"cns_member_ldapcn_to_cnsid";s:11:"description";s:48:"Find the Composr member-ID for an LDAP username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:35:"The Composr member-ID (null: none).";}}s:26:"cns_member_cnsid_to_ldapcn";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:22:"The Composr member-ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:26:"cns_member_cnsid_to_ldapcn";s:11:"description";s:47:"Find the LDAP username for a Composr member-ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:26:"The username (null: none).";}}s:23:"cns_get_all_ldap_groups";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"cns_get_all_ldap_groups";s:11:"description";s:44:"Get a list of usergroups on the LDAP server.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"The list of user-groups (string).";}}s:25:"cns_group_ldapcn_to_cnsid";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The usergroup.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:25:"cns_group_ldapcn_to_cnsid";s:11:"description";s:47:"Find the Composr-ID for a named LDAP usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?GROUP";s:11:"description";s:28:"The Composr-ID (null: none).";}}s:25:"cns_group_cnsid_to_ldapcn";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:5:"GROUP";s:11:"description";s:16:"The Conversr ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:25:"cns_group_cnsid_to_ldapcn";s:11:"description";s:96:"Find the named LDAP usergroup for an Conversr ID. Note that the returned MAY NOT ACTUALLY EXIST!";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The named LDAP usergroup (null: none).";}}s:20:"cns_ldap_guess_email";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The CN of the member.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:20:"cns_ldap_guess_email";s:11:"description";s:35:"Get the e-mail of a member in LDAP.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:46:"Guessed e-mail address (blank: couldn't find).";}}s:30:"cns_get_group_members_raw_ldap";a:5:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"members";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:30:"The list is written into this.";s:11:"phpdoc_name";s:7:"members";}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:24:"The ID of the usergroup.";s:11:"phpdoc_name";s:8:"group_id";}i:2;a:5:{s:4:"name";s:17:"include_primaries";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to include those in the usergroup as a primary member.";s:11:"phpdoc_name";s:17:"include_primaries";}i:3;a:5:{s:4:"name";s:13:"non_validated";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to include those applied to join the usergroup, but not validated in.";s:11:"phpdoc_name";s:13:"non_validated";}i:4;a:5:{s:4:"name";s:19:"include_secondaries";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether to include those in the usergroup as a secondary member.";s:11:"phpdoc_name";s:19:"include_secondaries";}}s:4:"name";s:30:"cns_get_group_members_raw_ldap";s:11:"description";s:126:"(LDAP helper for cns_get_group_members_raw) Get a list of members in a group (or more full details if $non_validated is true).";s:5:"flags";a:0:{}}s:27:"cns_get_members_groups_ldap";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:7:"?MEMBER";s:11:"description";s:60:"The member to find the usergroups of (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:27:"cns_get_members_groups_ldap";s:11:"description";s:134:"(LDAP helper for cns_get_members_groups) Get a list of the usergroups a member is in (keys say the usergroups, values are irrelevant).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:74:"Reverse list (e.g. array(1=>true,2=>true,3=>true) for someone in (1,2,3)).";}}s:33:"cns_ldap_get_member_primary_group";a:6:{s:8:"filename";s:20:"sources/cns_ldap.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:33:"cns_ldap_get_member_primary_group";s:11:"description";s:46:"Get the primary usergroup of a member in LDAP.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:4:"The.";}}s:26:"cns_group_ldapgid_to_cnsid";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{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:12:"The LDAP ID.";s:11:"phpdoc_name";s:3:"gid";}}s:4:"name";s:26:"cns_group_ldapgid_to_cnsid";s:11:"description";s:57:"Find the Composr-ID for an LDAP usergroup-ID. POSIX Only.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?GROUP";s:11:"description";s:38:"The Composr-ID (null: could not find).";}}s:27:"cns_group_ldapcn_to_ldapgid";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"cn";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The named LDAP usergroup.";s:11:"phpdoc_name";s:2:"cn";}}s:4:"name";s:27:"cns_group_ldapcn_to_ldapgid";s:11:"description";s:56:"Find the LDAP ID for a named LDAP usergroup. POSIX Only.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:35:"The LDAP usergroup ID (null: none).";}}s:23:"cns_long_cn_to_short_cn";a:6:{s:8:"filename";s:20:"sources/cns_ldap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"long";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The long one.";s:11:"phpdoc_name";s:4:"long";}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:23:"The type (e.g. CN, DN).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:23:"cns_long_cn_to_short_cn";s:11:"description";s:58:"Converts an active directory style long-CN to a short one.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"The short one.";}}s:26:"lost_password_emailer_step";a:6:{s:8:"filename";s:29:"sources/cns_lost_password.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:52:"Username to reset for (may be blank if other is not)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:13:"email_address";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"E-mail address to set for (may be blank if other is not)";s:11:"phpdoc_name";s:13:"email_address";}}s:4:"name";s:26:"lost_password_emailer_step";s:11:"description";s:31:"Send out a lost password e-mail";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:90:"A tuple: e-mail address, obfuscated e-mail address that is safe(ish) to display, member ID";}}s:17:"init__cns_members";a:5:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__cns_members";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"cns_get_filter_cats";a:6:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:15:"only_exists_now";s:7:"default";s:13:"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 only show ones that already have things in (i.e. not default ones)";s:11:"phpdoc_name";s:15:"only_exists_now";}}s:4:"name";s:19:"cns_get_filter_cats";s:11:"description";s:76:"Find all the Private Topic filter categories employed by the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:25:"List of filter categories";}}s:38:"cns_authusername_is_bound_via_httpauth";a:6:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"authusername";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:12:"authusername";}}s:4:"name";s:38:"cns_authusername_is_bound_via_httpauth";s:11:"description";s:131:"Find whether a member of a certain username is bound to HTTP authentication (an exceptional situation, only for sites that use it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:42:"The member ID, if it is (null: not bound).";}}s:18:"cns_is_ldap_member";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:18:"cns_is_ldap_member";s:11:"description";s:99:"Find whether a member is bound to HTTP LDAP (an exceptional situation, only for sites that use it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:22:"cns_is_httpauth_member";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_is_httpauth_member";s:11:"description";s:109:"Find whether a member is bound to HTTP authentication (an exceptional situation, only for sites that use it).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:31:"cns_get_all_custom_fields_match";a:6:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:9:{i:0;a:7:{s:4:"name";s:6:"groups";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:127:"That are applicable only to one of the usergroups in this list (empty: CPFs with no restriction) (null: disregard restriction).";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:11:"public_view";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:46:"That are publicly viewable (null: don't care).";s:11:"phpdoc_name";s:11:"public_view";}i:2;a:7:{s:4:"name";s:10:"owner_view";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:43:"That are owner viewable (null: don't care).";s:11:"phpdoc_name";s:10:"owner_view";}i:3;a:7:{s:4:"name";s:9:"owner_set";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:43:"That are owner settable (null: don't care).";s:11:"phpdoc_name";s:9:"owner_set";}i:4;a:7:{s:4:"name";s:8:"required";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:37:"That are required (null: don't care).";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:13:"show_in_posts";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:49:"That are to be shown in posts (null: don't care).";s:11:"phpdoc_name";s:13:"show_in_posts";}i:6;a:7:{s:4:"name";s:21:"show_in_post_previews";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:57:"That are to be shown in post previews (null: don't care).";s:11:"phpdoc_name";s:21:"show_in_post_previews";}i:7;a:7:{s:4:"name";s:13:"special_start";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:17:"That start 'cms_'";s:11:"phpdoc_name";s:13:"special_start";}i:8;a:7:{s:4:"name";s:17:"show_on_join_form";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:51:"That are to go on the join form (null: don't care).";s:11:"phpdoc_name";s:17:"show_on_join_form";}}s:4:"name";s:31:"cns_get_all_custom_fields_match";s:11:"description";s:64:"Gets all the system custom fields that match certain parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"A list of rows of such fields.";}}s:38:"cns_get_all_custom_fields_match_member";a:6:{s:8:"filename";s:23:"sources/cns_members.php";s:10:"parameters";a:10:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:11:"public_view";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:46:"That are publicly viewable (null: don't care).";s:11:"phpdoc_name";s:11:"public_view";}i:2;a:7:{s:4:"name";s:10:"owner_view";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:43:"That are owner viewable (null: don't care).";s:11:"phpdoc_name";s:10:"owner_view";}i:3;a:7:{s:4:"name";s:9:"owner_set";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:43:"That are owner settable (null: don't care).";s:11:"phpdoc_name";s:9:"owner_set";}i:4;a:7:{s:4:"name";s:9:"encrypted";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:38:"That are encrypted (null: don't care).";s:11:"phpdoc_name";s:9:"encrypted";}i:5;a:7:{s:4:"name";s:8:"required";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:37:"That are required (null: don't care).";s:11:"phpdoc_name";s:8:"required";}i:6;a:7:{s:4:"name";s:13:"show_in_posts";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:49:"That are to be shown in posts (null: don't care).";s:11:"phpdoc_name";s:13:"show_in_posts";}i:7;a:7:{s:4:"name";s:21:"show_in_post_previews";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:57:"That are to be shown in post previews (null: don't care).";s:11:"phpdoc_name";s:21:"show_in_post_previews";}i:8;a:7:{s:4:"name";s:13:"special_start";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:17:"That start 'cms_'";s:11:"phpdoc_name";s:13:"special_start";}i:9;a:7:{s:4:"name";s:17:"show_on_join_form";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:51:"That are to go on the join form (null: don't care).";s:11:"phpdoc_name";s:17:"show_on_join_form";}}s:4:"name";s:38:"cns_get_all_custom_fields_match_member";s:11:"description";s:64:"Gets all a member's custom fields that match certain parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:205:"A mapping of field title to a map of details: 'RAW' as the raw field value, 'RENDERED' as the rendered field value, 'FIELD_ID' to the field ID, 'EDITABILITY' defining if fractional editing can work on this";}}s:17:"find_cpf_field_id";a:6:{s:8:"filename";s:23:"sources/cns_members.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:10:"SHORT_TEXT";s:11:"description";s:10:"The title.";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:17:"find_cpf_field_id";s:11:"description";s:166:"Get the ID for a CPF if we only know the title. Warning: Only use this with custom code, never core code! It assumes a single language and that fields aren't renamed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The ID (null: could not find).";}}s:21:"find_cms_cpf_field_id";a:6:{s:8:"filename";s:23:"sources/cns_members.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:10:"SHORT_TEXT";s:11:"description";s:10:"The title.";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:21:"find_cms_cpf_field_id";s:11:"description";s:166:"Get the ID for a CPF if we only know the title. Warning: Only use this with custom code, never core code! It assumes a single language and that fields aren't renamed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The ID (null: could not find).";}}s:29:"cns_get_custom_field_mappings";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:29:"cns_get_custom_field_mappings";s:11:"description";s:130:"Returns a list of all field values for user. Doesn't take translation into account. Doesn't take anything permissive into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"The mapping, field_ to value.";}}s:28:"cns_get_custom_fields_member";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:28:"cns_get_custom_fields_member";s:11:"description";s:141:"Returns a mapping between field number and field value. Doesn't take translation into account. Doesn't take anything permissive into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The mapping.";}}s:28:"cns_get_member_primary_group";a:6:{s:8:"filename";s:23:"sources/cns_members.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:28:"cns_get_member_primary_group";s:11:"description";s:58:"Get the primary of a member (supports consulting of LDAP).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:12:"The primary.";}}s:19:"_members_filtercode";a:6:{s:8:"filename";s:24:"sources/cns_members2.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:7:"context";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Context (unused)";s:11:"phpdoc_name";s:7:"context";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:9:"field_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:9:"field_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:19:"_members_filtercode";s:11:"description";s:74:"Make sure we are doing necessary join to be able to access the given field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:17:"render_member_box";a:6:{s:8:"filename";s:24:"sources/cns_members2.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:14:"poster_details";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:157:"Either a member ID or an array containing: ip_address, poster_num_warnings, poster, poster_posts, poster_points, poster_join_date_string, primary_group_name.";s:11:"phpdoc_name";s:14:"poster_details";}i:1;a:7:{s:4:"name";s:7:"preview";s:7:"default";s:13:"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 only to show 'preview' details";s:11:"phpdoc_name";s:7:"preview";}i:2;a:7:{s:4:"name";s:5:"hooks";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:"An array of hooks. (null: lookup)";s:11:"phpdoc_name";s:5:"hooks";}i:3;a:7:{s:4:"name";s:12:"hook_objects";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:106:"An array of hook objects that allow us to collect additional mouse-over member information. (null: lookup)";s:11:"phpdoc_name";s:12:"hook_objects";}i:4;a:7:{s:4:"name";s:11:"show_avatar";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show the avatar";s:11:"phpdoc_name";s:11:"show_avatar";}i:5;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:6:"?array";s:11:"description";s:40:"Map of extra fields to show (null: none)";s:11:"phpdoc_name";s:12:"extra_fields";}i:6;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:7;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:17:"render_member_box";s:11:"description";s:128:"Get a member display box. Some terminology refers to a member here as a 'poster', as this function is used in forum topics also.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The member box";}}s:15:"cns_may_whisper";a:6:{s:8:"filename";s:24:"sources/cns_members2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"target";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:17:"Member to be PT'd";s:11:"phpdoc_name";s:6:"target";}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:36:"Member to PT. (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:15:"cns_may_whisper";s:11:"description";s:56:"Find if a certain member may be PTd by a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the PT may be created";}}s:24:"member_field_is_required";a:6:{s:8:"filename";s:30:"sources/cns_members_action.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:43:"The member being edited (null: new member).";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:6:{s:4:"name";s:11:"field_class";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:51:"Special code representing what kind of field it is.";s:11:"phpdoc_name";s:11:"field_class";s:3:"set";s:31:"email_address dob required_cpfs";}i:2;a:7:{s:4:"name";s:13:"current_value";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:88:"The value the field has now (null: lookup from member record; cannot do this for a CPF).";s:11:"phpdoc_name";s:13:"current_value";}i:3;a:7:{s:4:"name";s:14:"editing_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:69:"The member doing the adding/editing operation (null: current member).";s:11:"phpdoc_name";s:14:"editing_member";}}s:4:"name";s:24:"member_field_is_required";s:11:"description";s:48:"Find whether a member's field must be filled in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether the field must be filled in.";}}s:15:"cns_make_member";a:6:{s:8:"filename";s:30:"sources/cns_members_action.php";s:10:"parameters";a:41:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The username.";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The password.";s:11:"phpdoc_name";s:8:"password";}i:2;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:19:"The e-mail address.";s:11:"phpdoc_name";s:13:"email_address";}i:3;a:5:{s:4:"name";s:16:"secondary_groups";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:66:"A list of secondary usergroups (null: default/current usergroups).";s:11:"phpdoc_name";s:16:"secondary_groups";}i:4;a:5:{s:4:"name";s:7:"dob_day";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:37:"Day of date of birth (null: unknown).";s:11:"phpdoc_name";s:7:"dob_day";}i:5;a:5:{s:4:"name";s:9:"dob_month";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:39:"Month of date of birth (null: unknown).";s:11:"phpdoc_name";s:9:"dob_month";}i:6;a:5:{s:4:"name";s:8:"dob_year";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:38:"Year of date of birth (null: unknown).";s:11:"phpdoc_name";s:8:"dob_year";}i:7;a:5:{s:4:"name";s:13:"custom_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:46:"A map of custom field values (fieldID=>value).";s:11:"phpdoc_name";s:13:"custom_fields";}i:8;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:40:"The member timezone (null: auto-detect).";s:11:"phpdoc_name";s:8:"timezone";}i:9;a:7:{s:4:"name";s:13:"primary_group";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:37:"The member's primary (null: default).";s:11:"phpdoc_name";s:13:"primary_group";}i:10;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:39:"Whether the profile has been validated.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:9:"join_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:35:"When the member joined (null: now).";s:11:"phpdoc_name";s:9:"join_time";}i:12;a:7:{s:4:"name";s:15:"last_visit_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:"When the member last visited (null: now).";s:11:"phpdoc_name";s:15:"last_visit_time";}i:13;a:7:{s:4:"name";s:5:"theme";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:"The member's default theme.";s:11:"phpdoc_name";s:5:"theme";}i:14;a:7:{s:4:"name";s:10:"avatar_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:78:"The URL to the member's avatar (blank: none) (null: choose one automatically).";s:11:"phpdoc_name";s:10:"avatar_url";}i:15;a:7:{s:4:"name";s:9:"signature";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 member's signature (blank: none).";s:11:"phpdoc_name";s:9:"signature";}i:16;a:7:{s:4:"name";s:14:"is_perm_banned";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:41:"Whether the member is permanently banned.";s:11:"phpdoc_name";s:14:"is_perm_banned";}i:17;a:7:{s:4:"name";s:13:"preview_posts";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 posts are previewed before they are made (null: calculate automatically).";s:11:"phpdoc_name";s:13:"preview_posts";}i:18;a:7:{s:4:"name";s:10:"reveal_age";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:38:"Whether the member's age may be shown.";s:11:"phpdoc_name";s:10:"reveal_age";}i:19;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:45:"The member's title (blank: get from primary).";s:11:"phpdoc_name";s:5:"title";}i:20;a:7:{s:4:"name";s:9:"photo_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:44:"The URL to the member's photo (blank: none).";s:11:"phpdoc_name";s:9:"photo_url";}i:21;a:7:{s:4:"name";s:15:"photo_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:54:"The URL to the member's photo thumbnail (blank: none).";s:11:"phpdoc_name";s:15:"photo_thumb_url";}i:22;a:7:{s:4:"name";s:16:"views_signatures";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 member sees signatures in posts.";s:11:"phpdoc_name";s:16:"views_signatures";}i:23;a:7:{s:4:"name";s:28:"auto_monitor_contrib_content";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:125:"Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).";s:11:"phpdoc_name";s:28:"auto_monitor_contrib_content";}i:24;a:7:{s:4:"name";s:8:"language";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:42:"The member's language (null: auto detect).";s:11:"phpdoc_name";s:8:"language";}i:25;a:7:{s:4:"name";s:12:"allow_emails";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:47:"Whether the member allows e-mails via the site.";s:11:"phpdoc_name";s:12:"allow_emails";}i:26;a:7:{s:4:"name";s:23:"allow_emails_from_staff";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:58:"Whether the member allows e-mails from staff via the site.";s:11:"phpdoc_name";s:23:"allow_emails_from_staff";}i:27;a:7:{s:4:"name";s:10:"ip_address";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:59:"The member's IP address (null: IP address of current user).";s:11:"phpdoc_name";s:10:"ip_address";}i:28;a:7:{s:4:"name";s:28:"validated_email_confirm_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:77:"The code required before the account becomes active (blank: already entered).";s:11:"phpdoc_name";s:28:"validated_email_confirm_code";}i:29;a:7:{s:4:"name";s:17:"check_correctness";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to check details for correctness.";s:11:"phpdoc_name";s:17:"check_correctness";}i:30;a:7:{s:4:"name";s:29:"password_compatibility_scheme";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:175:"The compatibility scheme that the password operates in (blank: none) (null: none [meaning normal Composr salted style] or plain, depending on whether passwords are encrypted).";s:11:"phpdoc_name";s:29:"password_compatibility_scheme";}i:31;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:93:"The password salt (blank: password compatibility scheme does not use a salt / auto-generate).";s:11:"phpdoc_name";s:4:"salt";}i:32;a:7:{s:4:"name";s:16:"last_submit_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:62:"The time the member last made a submission (null: set to now).";s:11:"phpdoc_name";s:16:"last_submit_time";}i:33;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:34;a:7:{s:4:"name";s:16:"highlighted_name";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 the member username will be highlighted.";s:11:"phpdoc_name";s:16:"highlighted_name";}i:35;a:7:{s:4:"name";s:8:"pt_allow";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:34:"Usergroups that may PT the member.";s:11:"phpdoc_name";s:8:"pt_allow";}i:36;a:7:{s:4:"name";s:13:"pt_rules_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:82:"Rules that other members must agree to before they may start a PT with the member.";s:11:"phpdoc_name";s:13:"pt_rules_text";}i:37;a:7:{s:4:"name";s:18:"on_probation_until";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:62:"When the member is on probation until (null: not on probation)";s:11:"phpdoc_name";s:18:"on_probation_until";}i:38;a:7:{s:4:"name";s:14:"auto_mark_read";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:"Mark topics as read automatically";s:11:"phpdoc_name";s:14:"auto_mark_read";}i:39;a:7:{s:4:"name";s:13:"profile_views";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:36:"Total number of views to the profile";s:11:"phpdoc_name";s:13:"profile_views";}i:40;a:7:{s:4:"name";s:14:"total_sessions";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:44:"Total number of sessions (basically, visits)";s:11:"phpdoc_name";s:14:"total_sessions";}}s:4:"name";s:15:"cns_make_member";s:11:"description";s:13:"Add a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:25:"The ID of the new member.";}}s:28:"cns_make_boiler_custom_field";a:6:{s:8:"filename";s:30:"sources/cns_members_action.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:50:"The identifier of the boiler custom profile field.";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:28:"cns_make_boiler_custom_field";s:11:"description";s:99:"Make a custom profile field from one of the predefined templates (this is often used by importers).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:39:"The ID of the new custom profile field.";}}s:19:"get_cpf_storage_for";a:6:{s:8:"filename";s:30:"sources/cns_members_action.php";s:10:"parameters";a:3:{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:15:"The field type.";s:11:"phpdoc_name";s:4:"type";}i:1;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:31:"Whether the field is encrypted.";s:11:"phpdoc_name";s:9:"encrypted";}i:2;a:7:{s:4:"name";s:8:"_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:53:"The default value to use (null: none / null default).";s:11:"phpdoc_name";s:8:"_default";}}s:4:"name";s:19:"get_cpf_storage_for";s:11:"description";s:42:"Find how to store a field in the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:81:"A tuple: the DB field type, whether to index, the default (in correct data type).";}}s:21:"cns_make_custom_field";a:6:{s:8:"filename";s:30:"sources/cns_members_action.php";s:10:"parameters";a:17:{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:18:"Name of the field.";s:11:"phpdoc_name";s:4:"name";}i:1;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:69:"Whether the field is locked (i.e. cannot be deleted from the system).";s:11:"phpdoc_name";s:6:"locked";}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:10:"SHORT_TEXT";s:11:"description";s:25:"Description of the field.";s:11:"phpdoc_name";s:11:"description";}i:3;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:32:"The default value for the field.";s:11:"phpdoc_name";s:7:"default";}i:4;a:7:{s:4:"name";s:11:"public_view";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:39:"Whether the field is publicly viewable.";s:11:"phpdoc_name";s:11:"public_view";}i:5;a:7:{s:4:"name";s:10:"owner_view";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 viewable by the owner.";s:11:"phpdoc_name";s:10:"owner_view";}i:6;a:7:{s:4:"name";s:9:"owner_set";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 the field may be set by the owner.";s:11:"phpdoc_name";s:9:"owner_set";}i:7;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:31:"Whether the field is encrypted.";s:11:"phpdoc_name";s:9:"encrypted";}i:8;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:22:"The type of the field.";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:86:"short_text long_text short_trans long_trans integer upload picture url list tick float";}i:9;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:67:"Whether it is required that every member have this field filled in.";s:11:"phpdoc_name";s:8:"required";}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:124:"Whether this field is shown in posts and places where member details are highlighted (such as an image in a member gallery).";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:83:"Whether this field is shown in preview places, such as in the forum member tooltip.";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:62:"The order of this field relative to other fields (null: next).";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: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: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";}i:16;a:7:{s:4:"name";s:12:"no_name_dupe";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to check that no field has this name already.";s:11:"phpdoc_name";s:12:"no_name_dupe";}}s:4:"name";s:21:"cns_make_custom_field";s:11:"description";s:28:"Make a custom profile field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:39:"The ID of the new custom profile field.";}}s:17:"build_cpf_indices";a:5:{s:8:"filename";s:30:"sources/cns_members_action.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:9:"AUTO_LINK";s:11:"description";s:7:"CPF ID.";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"index";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:83:"Whether an index is needed for search purposes (there may be other reasons though).";s:11:"phpdoc_name";s:5:"index";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"CPF type.";s:11:"phpdoc_name";s:4:"type";}i:3;a:5:{s:4:"name";s:5:"_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Underlying field type.";s:11:"phpdoc_name";s:5:"_type";}}s:4:"name";s:17:"build_cpf_indices";s:11:"description";s:34:"Make custom profile field indices.";s:5:"flags";a:0:{}}s:25:"init__cns_members_action2";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"init__cns_members_action2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:32:"member_get_csv_headings_extended";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"member_get_csv_headings_extended";s:11:"description";s:54:"Get extended field mapping data for CSV import/export.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"Triple: headings, CPFs, subscription type data";}}s:23:"member_get_csv_headings";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"member_get_csv_headings";s:11:"description";s:45:"Get field mapping data for CSV import/export.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A map of heading information (human name to field name/encoding details)";}}s:35:"create_selection_list_timezone_list";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:1:{i:0;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:7:"?string";s:11:"description";s:49:"Current timezone to select (null: server default)";s:11:"phpdoc_name";s:8:"timezone";}}s:4:"name";s:35:"create_selection_list_timezone_list";s:11:"description";s:24:"Get a list of timezones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"List of timezones";}}s:17:"approve_ip_script";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"approve_ip_script";s:11:"description";s:74:"Validate an IP address, indirectly by passing through a confirmation code.";s:5:"flags";a:0:{}}s:28:"get_username_from_human_name";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.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:10:"SHORT_TEXT";s:11:"description";s:46:"The desired human name for the member profile.";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:28:"get_username_from_human_name";s:11:"description";s:158:"If we are using human names for usernames, a conflict is likely. Store a suffixed variety. Maybe later Composr will strip these suffixes out in some contexts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"A unique username.";}}s:30:"cns_member_external_linker_ask";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The username for the member profile.";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The type of member profile we are finishing off.";s:11:"phpdoc_name";s:4:"type";}i:2;a:7:{s:4:"name";s:13:"email_address";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:42:"Auto-detected e-mail address (blank: none)";s:11:"phpdoc_name";s:13:"email_address";}i:3;a:7:{s:4:"name";s:7:"dob_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:37:"Auto-detected DOB day (null: unknown)";s:11:"phpdoc_name";s:7:"dob_day";}i:4;a:7:{s:4:"name";s:9:"dob_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:39:"Auto-detected DOB month (null: unknown)";s:11:"phpdoc_name";s:9:"dob_month";}i:5;a:7:{s:4:"name";s:8:"dob_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:38:"Auto-detected DOB year (null: unknown)";s:11:"phpdoc_name";s:8:"dob_year";}i:6;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:38:"Auto-detected Timezone (null: unknown)";s:11:"phpdoc_name";s:8:"timezone";}i:7;a:7:{s:4:"name";s:8:"language";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:38:"Auto-detected Language (null: unknown)";s:11:"phpdoc_name";s:8:"language";}}s:4:"name";s:30:"cns_member_external_linker_ask";s:11:"description";s:146:"Get a form for finishing off a member profile (such as for LDAP or httpauth, where a partial profile is automatically made, but needs completion).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The form.";}}s:26:"cns_member_external_linker";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The username for the member profile.";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The password for the member profile.";s:11:"phpdoc_name";s:8:"password";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The type of member profile we are finishing off.";s:11:"phpdoc_name";s:4:"type";}i:3;a:7:{s:4:"name";s:11:"email_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:48:"Whether to check for duplicated email addresses.";s:11:"phpdoc_name";s:11:"email_check";}i:4;a:7:{s:4:"name";s:13:"email_address";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:42:"Auto-detected e-mail address (blank: none)";s:11:"phpdoc_name";s:13:"email_address";}i:5;a:7:{s:4:"name";s:7:"dob_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:37:"Auto-detected DOB day (null: unknown)";s:11:"phpdoc_name";s:7:"dob_day";}i:6;a:7:{s:4:"name";s:9:"dob_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:39:"Auto-detected DOB month (null: unknown)";s:11:"phpdoc_name";s:9:"dob_month";}i:7;a:7:{s:4:"name";s:8:"dob_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:38:"Auto-detected DOB year (null: unknown)";s:11:"phpdoc_name";s:8:"dob_year";}i:8;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:38:"Auto-detected Timezone (null: unknown)";s:11:"phpdoc_name";s:8:"timezone";}i:9;a:7:{s:4:"name";s:8:"language";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:38:"Auto-detected Language (null: unknown)";s:11:"phpdoc_name";s:8:"language";}i:10;a:7:{s:4:"name";s:10:"avatar_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:78:"The URL to the member's avatar (blank: none) (null: choose one automatically).";s:11:"phpdoc_name";s:10:"avatar_url";}i:11;a:7:{s:4:"name";s:9:"photo_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:44:"The URL to the member's photo (blank: none).";s:11:"phpdoc_name";s:9:"photo_url";}i:12;a:7:{s:4:"name";s:15:"photo_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:54:"The URL to the member's photo thumbnail (blank: none).";s:11:"phpdoc_name";s:15:"photo_thumb_url";}}s:4:"name";s:26:"cns_member_external_linker";s:11:"description";s:134:"Finishing off of a member profile (such as for LDAP or httpauth, where a partial profile is automatically made, but needs completion).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:43:"The member ID for the finished off profile.";}}s:25:"cns_read_in_custom_fields";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"custom_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:68:"The CPF field rows that we'll be reading in the member's values for.";s:11:"phpdoc_name";s:13:"custom_fields";}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:34:"Member involved (null: new member)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:25:"cns_read_in_custom_fields";s:11:"description";s:43:"Read in the custom profile field POST data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"The CPF data.";}}s:21:"cns_get_member_fields";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:26:{i:0;a:7:{s:4:"name";s:9:"mini_mode";s:7:"default";s:12:"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 we are only handling the essential details of a profile.";s:11:"phpdoc_name";s:9:"mini_mode";}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 ID of the member we are handling (null: new member).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:6:"groups";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:56:"A list of usergroups (null: default/current usergroups).";s:11:"phpdoc_name";s:6:"groups";}i:3;a:7:{s:4:"name";s:13:"email_address";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:19:"The e-mail address.";s:11:"phpdoc_name";s:13:"email_address";}i:4;a:7:{s:4:"name";s:13:"preview_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:49:"Whether posts are previewed before they are made.";s:11:"phpdoc_name";s:13:"preview_posts";}i:5;a:7:{s:4:"name";s:7:"dob_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:39:"Day of date of birth (null: not known).";s:11:"phpdoc_name";s:7:"dob_day";}i:6;a:7:{s:4:"name";s:9:"dob_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:41:"Month of date of birth (null: not known).";s:11:"phpdoc_name";s:9:"dob_month";}i:7;a:7:{s:4:"name";s:8:"dob_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:40:"Year of date of birth (null: not known).";s:11:"phpdoc_name";s:8:"dob_year";}i:8;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:41:"The member timezone (null: site default).";s:11:"phpdoc_name";s:8:"timezone";}i:9;a:7:{s:4:"name";s:13:"custom_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:66:"A map of custom fields values (field-id=>value) (null: not known).";s:11:"phpdoc_name";s:13:"custom_fields";}i:10;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:44:"The members default theme (null: not known).";s:11:"phpdoc_name";s:5:"theme";}i:11;a:7:{s:4:"name";s:10:"reveal_age";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 members age may be shown.";s:11:"phpdoc_name";s:10:"reveal_age";}i:12;a:7:{s:4:"name";s:16:"views_signatures";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 member sees signatures in posts.";s:11:"phpdoc_name";s:16:"views_signatures";}i:13;a:7:{s:4:"name";s:28:"auto_monitor_contrib_content";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:125:"Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).";s:11:"phpdoc_name";s:28:"auto_monitor_contrib_content";}i:14;a:7:{s:4:"name";s:8:"language";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:41:"The members language (null: auto detect).";s:11:"phpdoc_name";s:8:"language";}i:15;a:7:{s:4:"name";s:12:"allow_emails";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:47:"Whether the member allows e-mails via the site.";s:11:"phpdoc_name";s:12:"allow_emails";}i:16;a:7:{s:4:"name";s:23:"allow_emails_from_staff";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:58:"Whether the member allows e-mails from staff via the site.";s:11:"phpdoc_name";s:23:"allow_emails_from_staff";}i:17;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:39:"Whether the profile has been validated.";s:11:"phpdoc_name";s:9:"validated";}i:18;a:7:{s:4:"name";s:13:"primary_group";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:38:"The members primary (null: not known).";s:11:"phpdoc_name";s:13:"primary_group";}i:19;a:7:{s:4:"name";s:8:"username";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:"The username.";s:11:"phpdoc_name";s:8:"username";}i:20;a:7:{s:4:"name";s:14:"is_perm_banned";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:41:"Whether the member is permanently banned.";s:11:"phpdoc_name";s:14:"is_perm_banned";}i:21;a:7:{s:4:"name";s:12:"special_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:64:"The special type of profile this is (blank: not a special type).";s:11:"phpdoc_name";s:12:"special_type";}i:22;a:7:{s:4:"name";s:16:"highlighted_name";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 the member username will be highlighted.";s:11:"phpdoc_name";s:16:"highlighted_name";}i:23;a:7:{s:4:"name";s:8:"pt_allow";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:34:"Usergroups that may PT the member.";s:11:"phpdoc_name";s:8:"pt_allow";}i:24;a:7:{s:4:"name";s:13:"pt_rules_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:82:"Rules that other members must agree to before they may start a PT with the member.";s:11:"phpdoc_name";s:13:"pt_rules_text";}i:25;a:7:{s:4:"name";s:18:"on_probation_until";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:102:"When the member is on probation until (null: just finished probation / or effectively was never on it)";s:11:"phpdoc_name";s:18:"on_probation_until";}}s:4:"name";s:21:"cns_get_member_fields";s:11:"description";s:62:"Get form fields for adding/editing/finishing a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A pair: The form fields, Hidden fields (both Tempcode).";}}s:30:"cns_get_member_fields_settings";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:25:{i:0;a:7:{s:4:"name";s:9:"mini_mode";s:7:"default";s:12:"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 we are only handling the essential details of a profile.";s:11:"phpdoc_name";s:9:"mini_mode";}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 ID of the member we are handling (null: new member).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:6:"groups";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:56:"A list of usergroups (null: default/current usergroups).";s:11:"phpdoc_name";s:6:"groups";}i:3;a:7:{s:4:"name";s:13:"email_address";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:19:"The e-mail address.";s:11:"phpdoc_name";s:13:"email_address";}i:4;a:7:{s:4:"name";s:13:"preview_posts";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 posts are previewed before they are made (null: calculate statistically).";s:11:"phpdoc_name";s:13:"preview_posts";}i:5;a:7:{s:4:"name";s:7:"dob_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:39:"Day of date of birth (null: not known).";s:11:"phpdoc_name";s:7:"dob_day";}i:6;a:7:{s:4:"name";s:9:"dob_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:41:"Month of date of birth (null: not known).";s:11:"phpdoc_name";s:9:"dob_month";}i:7;a:7:{s:4:"name";s:8:"dob_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:40:"Year of date of birth (null: not known).";s:11:"phpdoc_name";s:8:"dob_year";}i:8;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:41:"The member timezone (null: site default).";s:11:"phpdoc_name";s:8:"timezone";}i:9;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:44:"The members default theme (null: not known).";s:11:"phpdoc_name";s:5:"theme";}i:10;a:7:{s:4:"name";s:10:"reveal_age";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 members age may be shown.";s:11:"phpdoc_name";s:10:"reveal_age";}i:11;a:7:{s:4:"name";s:16:"views_signatures";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 member sees signatures in posts.";s:11:"phpdoc_name";s:16:"views_signatures";}i:12;a:7:{s:4:"name";s:28:"auto_monitor_contrib_content";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:125:"Whether the member automatically is enabled for notifications for content they contribute to (null: get default from config).";s:11:"phpdoc_name";s:28:"auto_monitor_contrib_content";}i:13;a:7:{s:4:"name";s:8:"language";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:41:"The members language (null: auto detect).";s:11:"phpdoc_name";s:8:"language";}i:14;a:7:{s:4:"name";s:12:"allow_emails";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:47:"Whether the member allows e-mails via the site.";s:11:"phpdoc_name";s:12:"allow_emails";}i:15;a:7:{s:4:"name";s:23:"allow_emails_from_staff";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:58:"Whether the member allows e-mails from staff via the site.";s:11:"phpdoc_name";s:23:"allow_emails_from_staff";}i:16;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:39:"Whether the profile has been validated.";s:11:"phpdoc_name";s:9:"validated";}i:17;a:7:{s:4:"name";s:13:"primary_group";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:38:"The members primary (null: not known).";s:11:"phpdoc_name";s:13:"primary_group";}i:18;a:7:{s:4:"name";s:8:"username";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:"The username.";s:11:"phpdoc_name";s:8:"username";}i:19;a:7:{s:4:"name";s:14:"is_perm_banned";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:41:"Whether the member is permanently banned.";s:11:"phpdoc_name";s:14:"is_perm_banned";}i:20;a:7:{s:4:"name";s:12:"special_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:64:"The special type of profile this is (blank: not a special type).";s:11:"phpdoc_name";s:12:"special_type";}i:21;a:7:{s:4:"name";s:16:"highlighted_name";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 the member username will be highlighted.";s:11:"phpdoc_name";s:16:"highlighted_name";}i:22;a:7:{s:4:"name";s:8:"pt_allow";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:34:"Usergroups that may PT the member.";s:11:"phpdoc_name";s:8:"pt_allow";}i:23;a:7:{s:4:"name";s:13:"pt_rules_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:82:"Rules that other members must agree to before they may start a PT with the member.";s:11:"phpdoc_name";s:13:"pt_rules_text";}i:24;a:7:{s:4:"name";s:18:"on_probation_until";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:102:"When the member is on probation until (null: just finished probation / or effectively was never on it)";s:11:"phpdoc_name";s:18:"on_probation_until";}}s:4:"name";s:30:"cns_get_member_fields_settings";s:11:"description";s:62:"Get form fields for adding/editing/finishing a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A pair: The form fields, Hidden fields (both Tempcode).";}}s:29:"cns_get_member_fields_profile";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:9:"mini_mode";s:7:"default";s:12:"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 we are only handling the essential details of a profile.";s:11:"phpdoc_name";s:9:"mini_mode";}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 ID of the member we are handling (null: new member).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:6:"groups";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:56:"A list of usergroups (null: default/current usergroups).";s:11:"phpdoc_name";s:6:"groups";}i:3;a:7:{s:4:"name";s:13:"custom_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:66:"A map of custom fields values (field-id=>value) (null: not known).";s:11:"phpdoc_name";s:13:"custom_fields";}}s:4:"name";s:29:"cns_get_member_fields_profile";s:11:"description";s:62:"Get form fields for adding/editing/finishing a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A pair: The form fields, Hidden fields (both Tempcode).";}}s:15:"cns_edit_member";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:33:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:13:"email_address";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:40:"The e-mail address. (null: don't change)";s:11:"phpdoc_name";s:13:"email_address";}i:2;a:5:{s:4:"name";s:13:"preview_posts";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:70:"Whether posts are previewed before they are made. (null: don't change)";s:11:"phpdoc_name";s:13:"preview_posts";}i:3;a:5:{s:4:"name";s:7:"dob_day";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:54:"Day of date of birth. (null: don't change) (-1: deset)";s:11:"phpdoc_name";s:7:"dob_day";}i:4;a:5:{s:4:"name";s:9:"dob_month";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:56:"Month of date of birth. (null: don't change) (-1: deset)";s:11:"phpdoc_name";s:9:"dob_month";}i:5;a:5:{s:4:"name";s:8:"dob_year";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:55:"Year of date of birth. (null: don't change) (-1: deset)";s:11:"phpdoc_name";s:8:"dob_year";}i:6;a:5:{s:4:"name";s:8:"timezone";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:41:"The member timezone. (null: don't change)";s:11:"phpdoc_name";s:8:"timezone";}i:7;a:5:{s:4:"name";s:13:"primary_group";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:41:"The members primary (null: don't change).";s:11:"phpdoc_name";s:13:"primary_group";}i:8;a:5:{s:4:"name";s:13:"custom_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"A map of custom fields values (field-id=>value).";s:11:"phpdoc_name";s:13:"custom_fields";}i:9;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:47:"The members default theme. (null: don't change)";s:11:"phpdoc_name";s:5:"theme";}i:10;a:5:{s:4:"name";s:10:"reveal_age";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:58:"Whether the members age may be shown. (null: don't change)";s:11:"phpdoc_name";s:10:"reveal_age";}i:11;a:5:{s:4:"name";s:16:"views_signatures";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:65:"Whether the member sees signatures in posts. (null: don't change)";s:11:"phpdoc_name";s:16:"views_signatures";}i:12;a:5:{s:4:"name";s:28:"auto_monitor_contrib_content";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:114:"Whether the member automatically is enabled for notifications for content they contribute to. (null: don't change)";s:11:"phpdoc_name";s:28:"auto_monitor_contrib_content";}i:13;a:5:{s:4:"name";s:8:"language";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:42:"The members language. (null: don't change)";s:11:"phpdoc_name";s:8:"language";}i:14;a:5:{s:4:"name";s:12:"allow_emails";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:68:"Whether the member allows e-mails via the site. (null: don't change)";s:11:"phpdoc_name";s:12:"allow_emails";}i:15;a:5:{s:4:"name";s:23:"allow_emails_from_staff";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:79:"Whether the member allows e-mails from staff via the site. (null: don't change)";s:11:"phpdoc_name";s:23:"allow_emails_from_staff";}i:16;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:87:"Whether the profile has been validated (null: do not change this). (null: don't change)";s:11:"phpdoc_name";s:9:"validated";}i:17;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:34:"The username. (null: don't change)";s:11:"phpdoc_name";s:8:"username";}i:18;a:7:{s:4:"name";s:8:"password";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:"The password. (null: don't change)";s:11:"phpdoc_name";s:8:"password";}i:19;a:7:{s:4:"name";s:16:"highlighted_name";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:69:"Whether the member username will be highlighted. (null: don't change)";s:11:"phpdoc_name";s:16:"highlighted_name";}i:20;a:7:{s:4:"name";s:8:"pt_allow";s:7:"default";s:1:"*";s:11:"default_raw";s:3:"'*'";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:55:"Usergroups that may PT the member. (null: don't change)";s:11:"phpdoc_name";s:8:"pt_allow";}i:21;a:7:{s:4:"name";s:13:"pt_rules_text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:103:"Rules that other members must agree to before they may start a PT with the member. (null: don't change)";s:11:"phpdoc_name";s:13:"pt_rules_text";}i:22;a:7:{s:4:"name";s:18:"on_probation_until";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:58:"When the member is on probation until (null: don't change)";s:11:"phpdoc_name";s:18:"on_probation_until";}i:23;a:7:{s:4:"name";s:14:"auto_mark_read";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:54:"Mark topics as read automatically (null: don't change)";s:11:"phpdoc_name";s:14:"auto_mark_read";}i:24;a:7:{s:4:"name";s:9:"join_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:43:"When the member joined (null: don't change)";s:11:"phpdoc_name";s:9:"join_time";}i:25;a:7:{s:4:"name";s:10:"avatar_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:27:"Avatar (null: don't change)";s:11:"phpdoc_name";s:10:"avatar_url";}i:26;a:7:{s:4:"name";s:9:"signature";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:30:"Signature (null: don't change)";s:11:"phpdoc_name";s:9:"signature";}i:27;a:7:{s:4:"name";s:14:"is_perm_banned";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:34:"Banned status (null: don't change)";s:11:"phpdoc_name";s:14:"is_perm_banned";}i:28;a:7:{s:4:"name";s:9:"photo_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:30:"Photo URL (null: don't change)";s:11:"phpdoc_name";s:9:"photo_url";}i:29;a:7:{s:4:"name";s:15:"photo_thumb_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:46:"URL of thumbnail of photo (null: don't change)";s:11:"phpdoc_name";s:15:"photo_thumb_url";}i:30;a:7:{s:4:"name";s:4:"salt";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:34:"Password salt (null: don't change)";s:11:"phpdoc_name";s:4:"salt";}i:31;a:7:{s:4:"name";s:29:"password_compatibility_scheme";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:50:"Password compatibility scheme (null: don't change)";s:11:"phpdoc_name";s:29:"password_compatibility_scheme";}i:32;a:7:{s:4:"name";s:11:"skip_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:71:"Whether to skip security checks and most of the change-triggered emails";s:11:"phpdoc_name";s:11:"skip_checks";}}s:4:"name";s:15:"cns_edit_member";s:11:"description";s:14:"Edit a member.";s:5:"flags";a:0:{}}s:17:"cns_delete_member";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.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:9:"AUTO_LINK";s:11:"description";s:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:17:"cns_delete_member";s:11:"description";s:16:"Delete a member.";s:5:"flags";a:0:{}}s:14:"cns_ban_member";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.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:9:"AUTO_LINK";s:11:"description";s:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:14:"cns_ban_member";s:11:"description";s:13:"Ban a member.";s:5:"flags";a:0:{}}s:16:"cns_unban_member";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.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:9:"AUTO_LINK";s:11:"description";s:21:"The ID of the member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:16:"cns_unban_member";s:11:"description";s:15:"Unban a member.";s:5:"flags";a:0:{}}s:21:"cns_edit_custom_field";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:16:{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:35:"The ID of the custom profile field.";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:10:"SHORT_TEXT";s:11:"description";s:18:"Name of the field.";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"Description of the field.";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The default value for the field.";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:11:"public_view";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the field is publicly viewable.";s:11:"phpdoc_name";s:11:"public_view";}i:5;a:5:{s:4:"name";s:10:"owner_view";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"Whether the field is viewable by the owner.";s:11:"phpdoc_name";s:10:"owner_view";}i:6;a:5:{s:4:"name";s:9:"owner_set";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:42:"Whether the field may be set by the owner.";s:11:"phpdoc_name";s:9:"owner_set";}i:7;a:5:{s:4:"name";s:9:"encrypted";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:38:"Whether the field should be encrypted.";s:11:"phpdoc_name";s:9:"encrypted";}i:8;a:5:{s:4:"name";s:8:"required";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:8:"required";}i:9;a:5:{s:4:"name";s:13:"show_in_posts";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:124:"Whether this field is shown in posts and places where member details are highlighted (such as an image in a member gallery).";s:11:"phpdoc_name";s:13:"show_in_posts";}i:10;a:5:{s:4:"name";s:21:"show_in_post_previews";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:83:"Whether this field is shown in preview places, such as in the forum member tooltip.";s:11:"phpdoc_name";s:21:"show_in_post_previews";}i:11;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:49:"The order of this field relative to other fields.";s:11:"phpdoc_name";s:5:"order";}i:12;a:5:{s:4:"name";s:10:"only_group";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:13;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The type of the field.";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:86:"short_text long_text short_trans long_trans integer upload picture url list tick float";}i:14;a:5:{s:4:"name";s:17:"show_on_join_form";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:67:"Whether it is required that every member have this field filled in.";s:11:"phpdoc_name";s:17:"show_on_join_form";}i:15;a:5:{s:4:"name";s:7:"options";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:21:"cns_edit_custom_field";s:11:"description";s:28:"Edit a custom profile field.";s:5:"flags";a:0:{}}s:23:"cns_delete_custom_field";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.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:35:"The ID of the custom profile field.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:23:"cns_delete_custom_field";s:11:"description";s:30:"Delete a custom profile field.";s:5:"flags";a:0:{}}s:20:"cns_set_custom_field";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:5:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:8:"field_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:20:"The field being set.";s:11:"phpdoc_name";s:8:"field_id";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:127:"The value of the field. For a trans-type field, this can be either a lang-ID to be copied (from forum DB), or an actual string.";s:11:"phpdoc_name";s:5:"value";}i:3;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:34:"The field type (null: look it up).";s:11:"phpdoc_name";s:4:"type";}i:4;a:7:{s:4:"name";s:5:"defer";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:90:"Whether to defer the change, by returning a result change rather than doing it right away.";s:11:"phpdoc_name";s:5:"defer";}}s:4:"name";s:20:"cns_set_custom_field";s:11:"description";s:40:"Set a custom profile field for a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Mapping change (null: none / can't defer).";}}s:20:"cns_check_name_valid";a:6:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:1;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:56:"The username (may get altered) (null: nothing to check).";s:11:"phpdoc_name";s:8:"username";}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:161:"The member (null: member not actually added yet; this ID is only given for the duplication check, to make sure it doesn't think we are duplicating with ourself).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"password";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:38:"The password (null: nothing to check).";s:11:"phpdoc_name";s:8:"password";}i:3;a:7:{s:4:"name";s:13:"return_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to return errors instead of dieing on them.";s:11:"phpdoc_name";s:13:"return_errors";}}s:4:"name";s:20:"cns_check_name_valid";s:11:"description";s:69:"Check a username is valid for adding, and possibly also the password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:19:"Error (null: none).";}}s:23:"cns_member_choose_title";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"new_title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The new title.";s:11:"phpdoc_name";s:9:"new_title";}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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"cns_member_choose_title";s:11:"description";s:51:"Edit a member's personal title, and check validity.";s:5:"flags";a:0:{}}s:27:"cns_member_choose_signature";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"new_signature";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The new signature.";s:11:"phpdoc_name";s:13:"new_signature";}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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:27:"cns_member_choose_signature";s:11:"description";s:46:"Edit a member's signature, and check validity.";s:5:"flags";a:0:{}}s:24:"cns_member_choose_avatar";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"avatar_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The new avatar URL.";s:11:"phpdoc_name";s:10:"avatar_url";}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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:24:"cns_member_choose_avatar";s:11:"description";s:43:"Edit a member's avatar, and check validity.";s:5:"flags";a:0:{}}s:23:"cns_member_choose_photo";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"param_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:52:"The identifier for the name of the posted URL field.";s:11:"phpdoc_name";s:10:"param_name";}i:1;a:5:{s:4:"name";s:11:"upload_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:49:"The identifier for the name of the posted upload.";s:11:"phpdoc_name";s:11:"upload_name";}i:2;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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"cns_member_choose_photo";s:11:"description";s:42:"Edit a member's photo, and check validity.";s:5:"flags";a:0:{}}s:32:"cns_member_choose_photo_concrete";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:3:{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:13:"URL to photo.";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:23:"URL to thumbnail photo.";s:11:"phpdoc_name";s:9:"thumb_url";}i:2;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:38:"The member (null: the current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:32:"cns_member_choose_photo_concrete";s:11:"description";s:22:"Edit a member's photo.";s:5:"flags";a:0:{}}s:30:"update_member_username_caching";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:2:{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:14:"The member ID.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The new username that is being set for them.";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:30:"update_member_username_caching";s:11:"description";s:155:"Update caching against a member's username. This doesn't change the username in the actual member record -- it is assumed that this will be done elsewhere.";s:5:"flags";a:0:{}}s:30:"cns_delete_boiler_custom_field";a:5:{s:8:"filename";s:31:"sources/cns_members_action2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The identifier of the boiler custom profile field.";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:30:"cns_delete_boiler_custom_field";s:11:"description";s:101:"Delete a custom profile field from one of the predefined templates (this is often used by importers).";s:5:"flags";a:0:{}}s:26:"cns_list_multi_moderations";a:6:{s:8:"filename";s:26:"sources/cns_moderation.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:29:"The forum we are listing for.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:26:"cns_list_multi_moderations";s:11:"description";s:67:"List all the multi moderations that may be used in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"List of multi moderations.";}}s:32:"cns_may_perform_multi_moderation";a:6:{s:8:"filename";s:26:"sources/cns_moderation.php";s:10:"parameters";a:2:{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:10:"The forum.";s:11:"phpdoc_name";s:8:"forum_id";}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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:32:"cns_may_perform_multi_moderation";s:11:"description";s:74:"Whether a certain member may perform multi moderations in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:7:"Answer.";}}s:20:"cns_may_warn_members";a:6:{s:8:"filename";s:26:"sources/cns_moderation.php";s:10:"parameters";a:1:{i:0;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:20:"cns_may_warn_members";s:11:"description";s:67:"Whether a certain member may give formal warnings to other members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:7:"Answer.";}}s:16:"cns_get_warnings";a:6:{s:8:"filename";s:26:"sources/cns_moderation.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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:16:"cns_get_warnings";s:11:"description";s:46:"Get all the warning rows for a certain member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The warning rows.";}}s:25:"cns_make_multi_moderation";a:6:{s:8:"filename";s:33:"sources/cns_moderation_action.php";s:10:"parameters";a:8:{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:33:"The name of the multi moderation.";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:9:"post_text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:61:"The post text to add when applying (blank: don't add a post).";s:11:"phpdoc_name";s:9:"post_text";}i:2;a:5:{s:4:"name";s:7:"move_to";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:62:"The forum to move the topic when applying (null: do not move).";s:11:"phpdoc_name";s:7:"move_to";}i:3;a:5:{s:4:"name";s:9:"pin_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:47:"The pin state after applying (null: unchanged).";s:11:"phpdoc_name";s:9:"pin_state";}i:4;a:5:{s:4:"name";s:10:"sink_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:48:"The sink state after applying (null: unchanged).";s:11:"phpdoc_name";s:10:"sink_state";}i:5;a:5:{s:4:"name";s:10:"open_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:48:"The open state after applying (null: unchanged).";s:11:"phpdoc_name";s:10:"open_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:68:"The forum multi code for where this multi moderation may be applied.";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:17:"The title suffix.";s:11:"phpdoc_name";s:12:"title_suffix";}}s:4:"name";s:25:"cns_make_multi_moderation";s:11:"description";s:37:"Add a multi moderation to the system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:42:"The ID of the multi moderation just added.";}}s:25:"cns_edit_multi_moderation";a:5:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:9:{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:46:"The ID of the multi moderation we are editing.";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:10:"SHORT_TEXT";s:11:"description";s:33:"The name of the multi moderation.";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:9:"post_text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:58:"The default post text to add when applying (may be blank).";s:11:"phpdoc_name";s:9:"post_text";}i:3;a:5:{s:4:"name";s:7:"move_to";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:62:"The forum to move the topic when applying (null: do not move).";s:11:"phpdoc_name";s:7:"move_to";}i:4;a:5:{s:4:"name";s:9:"pin_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:47:"The pin state after applying (null: unchanged).";s:11:"phpdoc_name";s:9:"pin_state";}i:5;a:5:{s:4:"name";s:10:"sink_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:48:"The sink state after applying (null: unchanged).";s:11:"phpdoc_name";s:10:"sink_state";}i:6;a:5:{s:4:"name";s:10:"open_state";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:48:"The open state after applying (null: unchanged).";s:11:"phpdoc_name";s:10:"open_state";}i:7;a:5:{s:4:"name";s:16:"forum_multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:68:"The forum multi code for where this multi moderation may be applied.";s:11:"phpdoc_name";s:16:"forum_multi_code";}i:8;a:5:{s:4:"name";s:12:"title_suffix";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The title suffix.";s:11:"phpdoc_name";s:12:"title_suffix";}}s:4:"name";s:25:"cns_edit_multi_moderation";s:11:"description";s:24:"Edit a multi moderation.";s:5:"flags";a:0:{}}s:27:"cns_delete_multi_moderation";a:5:{s:8:"filename";s:34:"sources/cns_moderation_action2.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:47:"The ID of the multi moderation we are deleting.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:27:"cns_delete_multi_moderation";s:11:"description";s:26:"Delete a multi moderation.";s:5:"flags";a:0:{}}s:28:"cns_perform_multi_moderation";a:5:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:6:{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:49:"The ID of the multi moderation we are performing.";s:11:"phpdoc_name";s:2:"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:62:"The ID of the topic we are performing the multi moderation on.";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:62:"The reason for performing the multi moderation (may be blank).";s:11:"phpdoc_name";s:6:"reason";}i:3;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:77:"The post text for a post to be added to the topic (blank: do not add a post).";s:11:"phpdoc_name";s:9:"post_text";}i:4;a:7:{s:4:"name";s:13:"is_emphasised";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 post is marked emphasised.";s:11:"phpdoc_name";s:13:"is_emphasised";}i:5;a:7:{s:4:"name";s:8:"skip_sig";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 to skip showing the posters signature in the post.";s:11:"phpdoc_name";s:8:"skip_sig";}}s:4:"name";s:28:"cns_perform_multi_moderation";s:11:"description";s:27:"Perform a multi moderation.";s:5:"flags";a:0:{}}s:15:"warnings_script";a:5:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"warnings_script";s:11:"description";s:47:"Script for loading presets from saved warnings.";s:5:"flags";a:0:{}}s:16:"cns_make_warning";a:6:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:12:{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:24:"The member being warned.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:50:"An explanation for why the member is being warned.";s:11:"phpdoc_name";s:11:"explanation";}i:2;a:7:{s:4:"name";s:2:"by";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:52:"The member doing the warning (null: current member).";s:11:"phpdoc_name";s:2:"by";}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:36:"The time of the warning (null: now).";s:11:"phpdoc_name";s:4:"time";}i:4;a:7:{s:4:"name";s:10:"is_warning";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:32:"Whether this counts as a warning";s:11:"phpdoc_name";s:10:"is_warning";}i:5;a:7:{s:4:"name";s:18:"silence_from_topic";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:42:"The topic being silenced from (null: none)";s:11:"phpdoc_name";s:18:"silence_from_topic";}i:6;a:7:{s:4:"name";s:18:"silence_from_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:42:"The forum being silenced from (null: none)";s:11:"phpdoc_name";s:18:"silence_from_forum";}i:7;a:7:{s:4:"name";s:9:"probation";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:34:"Number of extra days for probation";s:11:"phpdoc_name";s:9:"probation";}i:8;a:7:{s:4:"name";s:9:"banned_ip";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:41:"The IP address being banned (blank: none)";s:11:"phpdoc_name";s:9:"banned_ip";}i:9;a:7:{s:4:"name";s:14:"charged_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:24:"The points being charged";s:11:"phpdoc_name";s:14:"charged_points";}i:10;a:7:{s:4:"name";s:13:"banned_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:34:"Whether the member is being banned";s:11:"phpdoc_name";s:13:"banned_member";}i:11;a:7:{s:4:"name";s:22:"changed_usergroup_from";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:50:"The usergroup being changed from (null: no change)";s:11:"phpdoc_name";s:22:"changed_usergroup_from";}}s:4:"name";s:16:"cns_make_warning";s:11:"description";s:21:"Add a formal warning.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:36:"The ID of the newly created warning.";}}s:16:"cns_edit_warning";a:6:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"warning_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:44:"The ID of the formal warning we are editing.";s:11:"phpdoc_name";s:10:"warning_id";}i:1;a:5:{s:4:"name";s:11:"explanation";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:50:"An explanation for why the member is being warned.";s:11:"phpdoc_name";s:11:"explanation";}i:2;a:7:{s:4:"name";s:10:"is_warning";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:32:"Whether this counts as a warning";s:11:"phpdoc_name";s:10:"is_warning";}}s:4:"name";s:16:"cns_edit_warning";s:11:"description";s:22:"Edit a formal warning.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The member ID the warning was for.";}}s:18:"cns_delete_warning";a:6:{s:8:"filename";s:34:"sources/cns_moderation_action2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"warning_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:45:"The ID of the formal warning we are deleting.";s:11:"phpdoc_name";s:10:"warning_id";}}s:4:"name";s:18:"cns_delete_warning";s:11:"description";s:24:"Delete a formal warning.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The member ID the warning was for.";}}s:23:"init__cns_notifications";a:5:{s:8:"filename";s:29:"sources/cns_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"init__cns_notifications";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"cns_get_pp_rows";a:6:{s:8:"filename";s:29:"sources/cns_notifications.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:5:"limit";s:7:"default";i:5;s:11:"default_raw";s:1:"5";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:71:"The maximum number of rows to get (gets newest first) (null: no limit).";s:11:"phpdoc_name";s:5:"limit";}i:1;a:7:{s:4:"name";s:6:"unread";s:7:"default";s:12:"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 only get unread ones.";s:11:"phpdoc_name";s:6:"unread";}i:2;a:7:{s:4:"name";s:14:"include_inline";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to include inline personal posts.";s:11:"phpdoc_name";s:14:"include_inline";}i:3;a:7:{s:4:"name";s:12:"time_barrier";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:"Only since this date (null: no limit).";s:11:"phpdoc_name";s:12:"time_barrier";}}s:4:"name";s:15:"cns_get_pp_rows";s:11:"description";s:50:"Get the personal post rows for the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"The personal post rows (with corresponding topic details).";}}s:22:"generate_notifications";a:6:{s:8:"filename";s:29:"sources/cns_notifications.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:22:"Member to look up for.";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"generate_notifications";s:11:"description";s:44:"Calculate Conversr notifications and render.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:56:"A pair: Number of notifications, Rendered notifications.";}}s:20:"cns_may_edit_poll_by";a:6:{s:8:"filename";s:21:"sources/cns_polls.php";s:10:"parameters";a:3:{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:10:"The forum.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:10:"poll_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:15:"The poll owner.";s:11:"phpdoc_name";s:10:"poll_owner";}i:2;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:54:"The member we are checking for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:20:"cns_may_edit_poll_by";s:11:"description";s:84:"Find whether a member can alter a poll owned by a certain member in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:19:"cns_may_attach_poll";a:6:{s:8:"filename";s:21:"sources/cns_polls.php";s:10:"parameters";a:5:{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:10:"The topic.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:11:"topic_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:42:"The topic owner (null: ask the DB for it).";s:11:"phpdoc_name";s:11:"topic_owner";}i:2;a:7:{s:4:"name";s:16:"has_poll_already";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:63:"Whether the topic already has a poll (null: ask the DB for it).";s:11:"phpdoc_name";s:16:"has_poll_already";}i:3;a:7:{s:4:"name";s:8:"forum_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:52:"The forum the topic is in (null: ask the DB for it).";s:11:"phpdoc_name";s:8:"forum_id";}i:4;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:54:"The member we are checking for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:19:"cns_may_attach_poll";s:11:"description";s:60:"Find whether a member may attach a poll to a detailed topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:22:"cns_may_delete_poll_by";a:6:{s:8:"filename";s:21:"sources/cns_polls.php";s:10:"parameters";a:3:{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:10:"The forum.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:10:"poll_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:15:"The poll owner.";s:11:"phpdoc_name";s:10:"poll_owner";}i:2;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:54:"The member we are checking for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:22:"cns_may_delete_poll_by";s:11:"description";s:85:"Find whether a member can delete a poll owned by a certain member in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:20:"cns_poll_get_results";a:6:{s:8:"filename";s:21:"sources/cns_polls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:9:"The poll.";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:7:{s:4:"name";s:15:"request_results";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:106:"Whether we must record that the current member is requesting the results, blocking future voting for them.";s:11:"phpdoc_name";s:15:"request_results";}}s:4:"name";s:20:"cns_poll_get_results";s:11:"description";s:49:"Find a map of results relating to a certain poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The map of results (null: could not find poll).";}}s:13:"cns_make_poll";a:6:{s:8:"filename";s:28:"sources/cns_polls_action.php";s:10:"parameters";a:9:{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:39:"The ID of the topic to add the poll to.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:8:"question";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The question.";s:11:"phpdoc_name";s:8:"question";}i:2;a:5:{s:4:"name";s:10:"is_private";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:79:"Whether the result tallies are kept private until the poll is made non-private.";s:11:"phpdoc_name";s:10:"is_private";}i:3;a:5:{s:4:"name";s:7:"is_open";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the poll is open for voting.";s:11:"phpdoc_name";s:7:"is_open";}i:4;a:5:{s:4:"name";s:18:"minimum_selections";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The minimum number of selections that may be made.";s:11:"phpdoc_name";s:18:"minimum_selections";}i:5;a:5:{s:4:"name";s:18:"maximum_selections";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The maximum number of selections that may be made.";s:11:"phpdoc_name";s:18:"maximum_selections";}i:6;a:5:{s:4:"name";s:14:"requires_reply";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:68:"Whether members must have a post in the topic before they made vote.";s:11:"phpdoc_name";s:14:"requires_reply";}i:7;a:5:{s:4:"name";s:7:"answers";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:74:"A list of pairs of the potential voteable answers and the number of votes.";s:11:"phpdoc_name";s:7:"answers";}i:8;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:56:"Whether to check there are permissions to make the poll.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:13:"cns_make_poll";s:11:"description";s:17:"Add a forum poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:39:"The ID of the newly created forum poll.";}}s:13:"cns_edit_poll";a:6:{s:8:"filename";s:29:"sources/cns_polls_action2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:33:"The ID of the poll we're editing.";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:5:{s:4:"name";s:8:"question";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The question.";s:11:"phpdoc_name";s:8:"question";}i:2;a:5:{s:4:"name";s:10:"is_private";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:79:"Whether the result tallies are kept private until the poll is made non-private.";s:11:"phpdoc_name";s:10:"is_private";}i:3;a:5:{s:4:"name";s:7:"is_open";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the poll is open for voting.";s:11:"phpdoc_name";s:7:"is_open";}i:4;a:5:{s:4:"name";s:18:"minimum_selections";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The minimum number of selections that may be made.";s:11:"phpdoc_name";s:18:"minimum_selections";}i:5;a:5:{s:4:"name";s:18:"maximum_selections";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The maximum number of selections that may be made.";s:11:"phpdoc_name";s:18:"maximum_selections";}i:6;a:5:{s:4:"name";s:14:"requires_reply";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:68:"Whether members must have a post in the topic before they made vote.";s:11:"phpdoc_name";s:14:"requires_reply";}i:7;a:5:{s:4:"name";s:7:"answers";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:41:"A list of the potential voteable answers.";s:11:"phpdoc_name";s:7:"answers";}i:8;a:7:{s:4:"name";s:6:"reason";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:"The reason for editing the poll.";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:13:"cns_edit_poll";s:11:"description";s:18:"Edit a forum poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"The ID of the topic the poll is on.";}}s:15:"cns_delete_poll";a:6:{s:8:"filename";s:29:"sources/cns_polls_action2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the poll we're deleting.";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:7:{s:4:"name";s:6:"reason";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:33:"The reason for deleting the poll.";s:11:"phpdoc_name";s:6:"reason";}i:2;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";}}s:4:"name";s:15:"cns_delete_poll";s:11:"description";s:20:"Delete a forum poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"The ID of the topic the poll is on.";}}s:16:"cns_vote_in_poll";a:5:{s:8:"filename";s:29:"sources/cns_polls_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"The ID of the poll we're voting in.";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:5:{s:4:"name";s:5:"votes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"A list of poll answers that are being voted for.";s:11:"phpdoc_name";s:5:"votes";}i:2;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:48:"The member that's voting (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:10:"topic_info";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 row of the topic the poll is for (null: get it from the DB).";s:11:"phpdoc_name";s:10:"topic_info";}}s:4:"name";s:16:"cns_vote_in_poll";s:11:"description";s:33:"Place a vote on a specified poll.";s:5:"flags";a:0:{}}s:12:"rules_script";a:5:{s:8:"filename";s:22:"sources/cns_popups.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"rules_script";s:11:"description";s:18:"Pop-up some rules.";s:5:"flags";a:0:{}}s:15:"init__cns_posts";a:5:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__cns_posts";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:21:"cns_may_post_in_topic";a:6:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:6:{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:42:"The forum ID of the forum the topic is in.";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:19:"The topic ID is in.";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:7:{s:4:"name";s:14:"last_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:69:"The last poster in the topic (null: do not check for double posting).";s:11:"phpdoc_name";s:14:"last_member_id";}i:3;a:7:{s:4:"name";s:6:"closed";s:7:"default";s:13:"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:"Whether this topic is closed.";s:11:"phpdoc_name";s:6:"closed";}i:4;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:5;a:7:{s:4:"name";s:20:"will_be_private_post";s:7:"default";s:13:"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 this post will be private.";s:11:"phpdoc_name";s:20:"will_be_private_post";}}s:4:"name";s:21:"cns_may_post_in_topic";s:11:"description";s:50:"Find whether a member may post in a certain topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:20:"cns_may_edit_post_by";a:6:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The post ID.";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:9:"post_time";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:36:"The time of the post (null: lookup).";s:11:"phpdoc_name";s:9:"post_time";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:37:"The owner of the post (null: lookup).";s:11:"phpdoc_name";s:14:"resource_owner";}i:3;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:113:"The forum the post is in (null: is a Private Topic, unless $post_time is null in which case we look this up too).";s:11:"phpdoc_name";s:8:"forum_id";}i:4;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:5;a:7:{s:4:"name";s:15:"topic_is_closed";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:182:"Whether the topic the post is in is closed (null: don't consider this, maybe we're not considering any one specific case, unless $post_time is null in which case we look this up to).";s:11:"phpdoc_name";s:15:"topic_is_closed";}i:6;a:7:{s:4:"name";s:6:"reason";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:80:"The reason for the topic being closed is put here (null: no interesting reason).";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:20:"cns_may_edit_post_by";s:11:"description";s:49:"Find whether a member may edit the detailed post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:22:"cns_may_delete_post_by";a:6:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The post ID.";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:7:{s:4:"name";s:9:"post_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:36:"The time of the post (null: lookup).";s:11:"phpdoc_name";s:9:"post_time";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:37:"The owner of the post (null: lookup).";s:11:"phpdoc_name";s:14:"resource_owner";}i:3;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:113:"The forum the post is in (null: is a Private Topic, unless $post_time is null in which case we look this up too).";s:11:"phpdoc_name";s:8:"forum_id";}i:4;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:5;a:7:{s:4:"name";s:15:"topic_is_closed";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:182:"Whether the topic the post is in is closed (null: don't consider this, maybe we're not considering any one specific case, unless $post_time is null in which case we look this up to).";s:11:"phpdoc_name";s:15:"topic_is_closed";}i:6;a:7:{s:4:"name";s:6:"reason";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:80:"The reason for the topic being closed is put here (null: no interesting reason).";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:22:"cns_may_delete_post_by";s:11:"description";s:51:"Find whether a member may delete the detailed post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:23:"cns_display_spacer_post";a:6:{s:8:"filename";s:21:"sources/cns_posts.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"linked_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Content type.";s:11:"phpdoc_name";s:11:"linked_type";}i:1;a:5:{s:4:"name";s:9:"linked_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"Content ID.";s:11:"phpdoc_name";s:9:"linked_id";}}s:4:"name";s:23:"cns_display_spacer_post";s:11:"description";s:78:"Try and make a spacer post look nicer on Conversr than it automatically would.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:68:"A pair: better description (may be null), better post (may be null).";}}s:15:"render_post_box";a:6:{s:8:"filename";s:22:"sources/cns_posts2.php";s:10:"parameters";a:6:{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:13:"The post row.";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:14:"use_post_title";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:151:"Whether to include context (i.e. say WHAT this is, not just show the actual content). Also uses the post title, as opposed to the post's topic's title.";s:11:"phpdoc_name";s:14:"use_post_title";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to embed a link to the topic.";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:15:"render_post_box";s:11:"description";s:55:"Show a post, isolated of the other posts in it's topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The isolated post.";}}s:22:"init__cns_posts_action";a:5:{s:8:"filename";s:28:"sources/cns_posts_action.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"init__cns_posts_action";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"cns_get_post_templates";a:6:{s:8:"filename";s:28:"sources/cns_posts_action.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:20:"The ID of the forum.";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:22:"cns_get_post_templates";s:11:"description";s:59:"Get a list of post templates that apply to a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"The list of applicable post templates.";}}s:14:"cns_check_post";a:6:{s:8:"filename";s:28:"sources/cns_posts_action.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:9:"LONG_TEXT";s:11:"description";s:9:"The post.";s:11:"phpdoc_name";s:4:"post";}i:1;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:97:"The ID of the topic the post would be in (null: don't check with regard to any particular topic).";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:7:{s:4:"name";s:6:"poster";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:34:"The poster (null: current member).";s:11:"phpdoc_name";s:6:"poster";}}s:4:"name";s:14:"cns_check_post";s:11:"description";s:28:"Check a post would be valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:111:"Row of the existing post if a double post (single row map-element in a list of rows) (null: not a double post).";}}s:13:"cns_make_post";a:6:{s:8:"filename";s:28:"sources/cns_posts_action.php";s:10:"parameters";a:27:{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:39:"The ID of the topic to add the post to.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:37:"The title of the post (may be blank).";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The post.";s:11:"phpdoc_name";s:4:"post";}i:3;a:7:{s:4:"name";s:8:"skip_sig";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 to skip showing the posters signature in the post.";s:11:"phpdoc_name";s:8:"skip_sig";}i:4;a:7:{s:4:"name";s:10:"is_starter";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:63:"Whether the post is the first in the topic (null: work it out).";s:11:"phpdoc_name";s:10:"is_starter";}i:5;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:104:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially).";s:11:"phpdoc_name";s:9:"validated";}i:6;a:7:{s:4:"name";s:13:"is_emphasised";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:38:"Whether the post is marked emphasised.";s:11:"phpdoc_name";s:13:"is_emphasised";}i:7;a:7:{s:4:"name";s:20:"poster_name_if_guest";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:74:"The name of the person making the post (null: username of current member).";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:8;a:7:{s:4:"name";s:10:"ip_address";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:71:"The IP address the post is to be made under (null: IP of current user).";s:11:"phpdoc_name";s:10:"ip_address";}i:9;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:33:"The time of the post (null: now).";s:11:"phpdoc_name";s:4:"time";}i:10;a:7:{s:4:"name";s:6:"poster";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:34:"The poster (null: current member).";s:11:"phpdoc_name";s:6:"poster";}i:11;a:7:{s:4:"name";s:19:"intended_solely_for";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:64:"The member that this post is intended solely for (null: public).";s:11:"phpdoc_name";s:19:"intended_solely_for";}i:12;a:7:{s:4:"name";s:14:"last_edit_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:52:"The last edit time of the post (null: never edited).";s:11:"phpdoc_name";s:14:"last_edit_time";}i:13;a:7:{s:4:"name";s:12:"last_edit_by";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:63:"The member that was last to edit the post (null: never edited).";s:11:"phpdoc_name";s:12:"last_edit_by";}i:14;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:77:"Whether to check permissions for whether the post may be made as it is given.";s:11:"phpdoc_name";s:17:"check_permissions";}i:15;a:7:{s:4:"name";s:14:"update_caching";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to update the caches after making the post.";s:11:"phpdoc_name";s:14:"update_caching";}i:16;a:7:{s:4:"name";s:8:"forum_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:59:"The forum the post will be in (null: find out from the DB).";s:11:"phpdoc_name";s:8:"forum_id";}i:17;a:7:{s:4:"name";s:19:"support_attachments";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to allow attachments in this post.";s:11:"phpdoc_name";s:19:"support_attachments";}i:18;a:7:{s:4:"name";s:11:"topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:48:"The title of the topic (null: find from the DB).";s:11:"phpdoc_name";s:11:"topic_title";}i:19;a:7:{s:4:"name";s:4:"sunk";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:34:"Whether the topic is a sunk topic.";s:11:"phpdoc_name";s:4:"sunk";}i:20;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:21;a:7:{s:4:"name";s:9:"anonymous";s:7:"default";s:13:"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 make the post anonymous";s:11:"phpdoc_name";s:9:"anonymous";}i:22;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:23;a:7:{s:4:"name";s:5:"is_pt";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:59:"Whether this is for a new Private Topic (null: work it out)";s:11:"phpdoc_name";s:5:"is_pt";}i:24;a:7:{s:4:"name";s:23:"insert_comcode_as_admin";s:7:"default";s:13:"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 explicitly insert the Comcode with admin privileges";s:11:"phpdoc_name";s:23:"insert_comcode_as_admin";}i:25;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:51:"Parent post ID (null: none-threaded/root-of-thread)";s:11:"phpdoc_name";s:9:"parent_id";}i:26;a:7:{s:4:"name";s:17:"send_notification";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to send out notifications";s:11:"phpdoc_name";s:17:"send_notification";}}s:4:"name";s:13:"cns_make_post";s:11:"description";s:11:"Add a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:23:"The ID of the new post.";}}s:34:"cns_force_update_member_post_count";a:5:{s:8:"filename";s:28:"sources/cns_posts_action.php";s:10:"parameters";a:2:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:21:"member_post_count_dif";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:77:"The amount to add to the post count (null: fully recalculate the post count).";s:11:"phpdoc_name";s:21:"member_post_count_dif";}}s:4:"name";s:34:"cns_force_update_member_post_count";s:11:"description";s:46:"Force a members post count to be recalculated.";s:5:"flags";a:0:{}}s:22:"cns_decache_cms_blocks";a:5:{s:8:"filename";s:28:"sources/cns_posts_action.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"updated_forum_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:20:"The ID of the forum.";s:11:"phpdoc_name";s:16:"updated_forum_id";}i:1;a:7:{s:4:"name";s:10:"forum_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:50:"The name of the forum (null: find it from the DB).";s:11:"phpdoc_name";s:10:"forum_name";}i:2;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:42:"The member (null: do no member decaching).";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:22:"cns_decache_cms_blocks";s:11:"description";s:95:"Decache cached Conversr elements depending on a certain forum, and optionally a certain member.";s:5:"flags";a:0:{}}s:34:"cns_get_safe_specified_poster_name";a:6:{s:8:"filename";s:29:"sources/cns_posts_action2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"is_required_field";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:81:"If it is a required field (null: typically no, but look at hidden option for it).";s:11:"phpdoc_name";s:17:"is_required_field";}}s:4:"name";s:34:"cns_get_safe_specified_poster_name";s:11:"description";s:68:"Get the poster name a Guest may have specified, after sanitising it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Poster name.";}}s:27:"cns_member_handle_promotion";a:5:{s:8:"filename";s:29:"sources/cns_posts_action2.php";s:10:"parameters";a:1:{i:0;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:27:"cns_member_handle_promotion";s:11:"description";s:59:"Check to see if a member deserves promotion, and handle it.";s:5:"flags";a:0:{}}s:27:"cns_send_topic_notification";a:5:{s:8:"filename";s:29:"sources/cns_posts_action2.php";s:10:"parameters";a:12:{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:29:"The URL to view the new post.";s:11:"phpdoc_name";s:3:"url";}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:39:"The ID of the topic that got posted in.";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:60:"The forum that the topic is in (null: find out from the DB).";s:11:"phpdoc_name";s:8:"forum_id";}i:3;a:5:{s:4:"name";s:16:"sender_member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:68:"The member that made the post triggering this tracking notification.";s:11:"phpdoc_name";s:16:"sender_member_id";}i:4;a:5:{s:4:"name";s:10:"is_starter";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the post started a new topic.";s:11:"phpdoc_name";s:10:"is_starter";}i:5;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:28:"The post, in Comcode format.";s:11:"phpdoc_name";s:4:"post";}i:6;a:5:{s:4:"name";s:11:"topic_title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:152:"The topic title (blank: look it up from the $topic_id). If non-blank we must use it as it is implying the database might not have the correct value yet.";s:11:"phpdoc_name";s:11:"topic_title";}i:7;a:7:{s:4:"name";s:9:"_limit_to";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:64:"Only send the notification to this member (null: no such limit).";s:11:"phpdoc_name";s:9:"_limit_to";}i:8;a:7:{s:4:"name";s:5:"is_pt";s:7:"default";s:13:"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 this is for a Private Topic.";s:11:"phpdoc_name";s:5:"is_pt";}i:9;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:10;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:11;a:7:{s:4:"name";s:11:"poster_name";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 name of the poster (null: default for $sender_member_id)";s:11:"phpdoc_name";s:11:"poster_name";}}s:4:"name";s:27:"cns_send_topic_notification";s:11:"description";s:56:"Send out a notification, as a topic just got a new post.";s:5:"flags";a:0:{}}s:30:"cns_force_update_topic_caching";a:5:{s:8:"filename";s:29:"sources/cns_posts_action2.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:9:"AUTO_LINK";s:11:"description";s:41:"The ID of the topic to update caching of.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:14:"post_count_dif";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:133:"The post count difference we know the topic has undergone (null: we'll need to work out from scratch how many posts are in the topic)";s:11:"phpdoc_name";s:14:"post_count_dif";}i:2;a:7:{s:4:"name";s:4:"last";s:7:"default";s:12:"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 this is the latest post in the topic.";s:11:"phpdoc_name";s:4:"last";}i:3;a:7:{s:4:"name";s:5:"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:44:"Whether this is the first post in the topic.";s:11:"phpdoc_name";s:5:"first";}i:4;a:7:{s:4:"name";s:12:"last_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:53:"The ID of the last post in the topic (null: unknown).";s:11:"phpdoc_name";s:12:"last_post_id";}i:5;a:7:{s:4:"name";s:9:"last_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:55:"The time of the last post in the topic (null: unknown).";s:11:"phpdoc_name";s:9:"last_time";}i:6;a:7:{s:4:"name";s:10:"last_title";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:56:"The title of the last post in the topic (null: unknown).";s:11:"phpdoc_name";s:10:"last_title";}i:7;a:7:{s:4:"name";s:9:"last_post";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:71:"The ID of the last posts language string for the topic (null: unknown).";s:11:"phpdoc_name";s:9:"last_post";}i:8;a:7:{s:4:"name";s:13:"last_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:55:"The last username to post in the topic (null: unknown).";s:11:"phpdoc_name";s:13:"last_username";}i:9;a:7:{s:4:"name";s:14:"last_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:63:"The ID of the last member to post in the topic (null: unknown).";s:11:"phpdoc_name";s:14:"last_member_id";}}s:4:"name";s:30:"cns_force_update_topic_caching";s:11:"description";s:25:"Update a topic's caching.";s:5:"flags";a:0:{}}s:30:"cns_force_update_forum_caching";a:5:{s:8:"filename";s:29:"sources/cns_posts_action2.php";s:10:"parameters";a:9:{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:52:"The ID of the forum to update the cached details of.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:7:{s:4:"name";s:20:"num_topics_increment";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:86:"How much to increment the topic count by (null: It has to be completely recalculated).";s:11:"phpdoc_name";s:20:"num_topics_increment";}i:2;a:7:{s:4:"name";s:19:"num_posts_increment";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:85:"How much to increment the post count by (null: It has to be completely recalculated).";s:11:"phpdoc_name";s:19:"num_posts_increment";}i:3;a:7:{s:4:"name";s:13:"last_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:71:"The ID of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:13:"last_topic_id";}i:4;a:7:{s:4:"name";s:10:"last_title";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:74:"The title of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:10:"last_title";}i:5;a:7:{s:4:"name";s:9:"last_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:83:"The last post time of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:9:"last_time";}i:6;a:7:{s:4:"name";s:13:"last_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:87:"The last post username of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:13:"last_username";}i:7;a:7:{s:4:"name";s:14:"last_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:85:"The last post member of the last topic (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:14:"last_member_id";}i:8;a:7:{s:4:"name";s:13:"last_forum_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:185:"The forum the last post was in (note this makes sense, because there may be subforums under this forum that we have to take into account). (null: Unknown, it will have to be looked up).";s:11:"phpdoc_name";s:13:"last_forum_id";}}s:4:"name";s:30:"cns_force_update_forum_caching";s:11:"description";s:31:"Update a forums cached details.";s:5:"flags";a:0:{}}s:17:"cns_validate_post";a:6:{s:8:"filename";s:29:"sources/cns_posts_action3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"The ID of the post.";s:11:"phpdoc_name";s:7:"post_id";}i:1;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:72:"The ID of the topic that contains the post (null: find out from the DB).";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:7:{s:4:"name";s:8:"forum_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:80:"The forum that the topic containing the post is in (null: find out from the DB).";s:11:"phpdoc_name";s:8:"forum_id";}i:3;a:7:{s:4:"name";s:6:"poster";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:75:"The member that made the post being validated (null: find out from the DB).";s:11:"phpdoc_name";s:6:"poster";}i:4;a:7:{s:4:"name";s:4:"post";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:63:"The post, in Comcode format (null: It'll have to be looked-up).";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:17:"cns_validate_post";s:11:"description";s:16:"Validate a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:170:"The ID of the topic (while this could be known without calling this function, as we've gone to effort and grabbed it from the DB, it might turn out useful for something).";}}s:13:"cns_edit_post";a:6:{s:8:"filename";s:29:"sources/cns_posts_action3.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:38:"The ID of the post that we're editing.";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:66:"Whether the post is validated (null: decide based on permissions).";s:11:"phpdoc_name";s:9:"validated";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:37:"The title of the post (may be blank).";s:11:"phpdoc_name";s:5:"title";}i:3;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The post.";s:11:"phpdoc_name";s:4:"post";}i:4;a:5:{s:4:"name";s:8:"skip_sig";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:58:"Whether to skip showing the posters signature in the post.";s:11:"phpdoc_name";s:8:"skip_sig";}i:5;a:5:{s:4:"name";s:13:"is_emphasised";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:38:"Whether the post is marked emphasised.";s:11:"phpdoc_name";s:13:"is_emphasised";}i:6;a:5:{s:4:"name";s:19:"intended_solely_for";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:62:"The member that this post is intended solely for (null: none).";s:11:"phpdoc_name";s:19:"intended_solely_for";}i:7;a:5:{s:4:"name";s:14:"show_as_edited";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to show the post as edited.";s:11:"phpdoc_name";s:14:"show_as_edited";}i:8;a:5:{s:4:"name";s:14:"mark_as_unread";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to mark the topic as unread by those previous having read this post.";s:11:"phpdoc_name";s:14:"mark_as_unread";}i:9;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"The reason for this action.";s:11:"phpdoc_name";s:6:"reason";}i:10;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:11;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:12;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:13;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:14;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}i:15;a:7:{s:4:"name";s:10:"run_checks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Whether to run checks";s:11:"phpdoc_name";s:10:"run_checks";}i:16;a:7:{s:4:"name";s:20:"poster_name_if_guest";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:57:"The name of the person making the post (null: no change).";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}}s:4:"name";s:13:"cns_edit_post";s:11:"description";s:12:"Edit a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:170:"The ID of the topic (while this could be known without calling this function, as we've gone to effort and grabbed it from the DB, it might turn out useful for something).";}}s:22:"cns_delete_posts_topic";a:6:{s:8:"filename";s:29:"sources/cns_posts_action3.php";s:10:"parameters";a:5:{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:46:"The ID of the topic we're deleting posts from.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:26:"A list of posts to delete.";s:11:"phpdoc_name";s:5:"posts";}i:2;a:7:{s:4:"name";s:6:"reason";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:27:"The reason for this action.";s:11:"phpdoc_name";s:6:"reason";}i:3;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:4;a:7:{s:4:"name";s:7:"cleanup";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:79:"Whether to do a cleanup: delete the topic if there will be no posts left in it.";s:11:"phpdoc_name";s:7:"cleanup";}}s:4:"name";s:22:"cns_delete_posts_topic";s:11:"description";s:26:"Delete posts from a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether the topic was deleted, due to all posts in said topic being deleted.";}}s:14:"cns_move_posts";a:6:{s:8:"filename";s:29:"sources/cns_posts_action3.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:13:"from_topic_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:27:"The ID of the source topic.";s:11:"phpdoc_name";s:13:"from_topic_id";}i:1;a:5:{s:4:"name";s:11:"to_topic_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:71:"The ID of the destination topic (null: move to new topic in $forum_id).";s:11:"phpdoc_name";s:11:"to_topic_id";}i:2;a:5:{s:4:"name";s:5:"posts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"A list of post IDs to move.";s:11:"phpdoc_name";s:5:"posts";}i:3;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"The reason for this action.";s:11:"phpdoc_name";s:6:"reason";}i:4;a:7:{s:4:"name";s:11:"to_forum_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:59:"The forum the destination topic is in (null: find from DB).";s:11:"phpdoc_name";s:11:"to_forum_id";}i:5;a:7:{s:4:"name";s:15:"delete_if_empty";s:7:"default";s:13:"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 delete the topic if all posts in it have been moved.";s:11:"phpdoc_name";s:15:"delete_if_empty";}i:6;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:11:"?SHORT_TEXT";s:11:"description";s:58:"The title for the new topic (null: work out / irrelevant).";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:14:"cns_move_posts";s:11:"description";s:37:"Move posts from one topic to another.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether the topic was deleted.";}}s:21:"render_profile_tabset";a:6:{s:8:"filename";s:24:"sources/cns_profiles.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:12:"Screen title";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:2;a:7:{s:4:"name";s:17:"member_id_viewing";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:68:"The ID of the member who is doing the viewing (null: current member)";s:11:"phpdoc_name";s:17:"member_id_viewing";}i:3;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:8:"?ID_TEXT";s:11:"description";s:81:"The username of the member who is being viewed (null: work out from member_id_of)";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:21:"render_profile_tabset";s:11:"description";s:24:"Render a member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:20:"The rendered profile";}}s:16:"render_topic_box";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:6:{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:9:"Topic row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Zone to link through to";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_topic_box";s:11:"description";s:19:"Render a topic box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The topic box";}}s:19:"cns_get_topic_where";a:6:{s:8:"filename";s:22:"sources/cns_topics.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:46:"The ID of the topic we are getting details of.";s:11:"phpdoc_name";s:8:"topic_id";}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:51:"The member doing the lookup (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:19:"cns_get_topic_where";s:11:"description";s:51:"Get an SQL 'WHERE' clause for the posts in a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The WHERE clause.";}}s:26:"cns_may_make_private_topic";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:1:{i:0;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:26:"cns_may_make_private_topic";s:11:"description";s:47:"Find whether a member may make a Private Topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:28:"cns_check_make_private_topic";a:5:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"cns_check_make_private_topic";s:11:"description";s:45:"Check that a member may make a Private Topic.";s:5:"flags";a:0:{}}s:18:"cns_may_post_topic";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:2:{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:32:"The forum the topic would be in.";s:11:"phpdoc_name";s:8:"forum_id";}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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:18:"cns_may_post_topic";s:11:"description";s:58:"Find whether a member may post a topic in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:19:"cns_may_report_post";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:1:{i:0;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:19:"cns_may_report_post";s:11:"description";s:40:"Find whether a member may report a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:21:"cns_has_replied_topic";a:6:{s:8:"filename";s:22:"sources/cns_topics.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:10:"The topic.";s:11:"phpdoc_name";s:8:"topic_id";}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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:21:"cns_has_replied_topic";s:11:"description";s:53:"Find whether a member has replied to a certain topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:22:"cns_may_edit_topics_by";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:3:{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:32:"The forum the topic would be in.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:31:"The member checking access for.";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:34:"The member that owns this resource";s:11:"phpdoc_name";s:14:"resource_owner";}}s:4:"name";s:22:"cns_may_edit_topics_by";s:11:"description";s:57:"Find whether a member may edit topics in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:24:"cns_may_delete_topics_by";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:3:{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:32:"The forum the topic would be in.";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:31:"The member checking access for.";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:34:"The member that owns this resource";s:11:"phpdoc_name";s:14:"resource_owner";}}s:4:"name";s:24:"cns_may_delete_topics_by";s:11:"description";s:59:"Find whether a member may delete topics in a certain forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:19:"cns_ping_topic_read";a:5:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:3:{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:36:"The ID of the topic to mark as read.";s:11:"phpdoc_name";s:8:"topic_id";}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:49:"The member to do this for (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:9:"timestamp";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:32:"Mark read timestamp (null: now).";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:19:"cns_ping_topic_read";s:11:"description";s:43:"Mark a topic as read by the current member.";s:5:"flags";a:0:{}}s:18:"cns_has_read_topic";a:6:{s:8:"filename";s:22:"sources/cns_topics.php";s:10:"parameters";a:4:{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:20:"The ID of the topic.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:15:"topic_last_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:66:"The time of the last post in the topic (null: get it from the DB).";s:11:"phpdoc_name";s:15:"topic_last_time";}i:2;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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:16:"member_last_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:69:"The time the member last viewed the topic (null: get it from the DB).";s:11:"phpdoc_name";s:16:"member_last_time";}}s:4:"name";s:18:"cns_has_read_topic";s:11:"description";s:110:"Find whether a member has read a certain topic, such that they have possibly read all posts within it already.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:31:"They have read it as such, yes.";}}s:25:"cns_has_special_pt_access";a:6:{s:8:"filename";s:22:"sources/cns_topics.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:20:"The ID of the topic.";s:11:"phpdoc_name";s:8:"topic_id";}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:34:"The member (null: current member).";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:25:"cns_has_special_pt_access";s:11:"description";s:57:"Find whether a member has special access to a certain PT.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether they have special access.";}}s:14:"cns_make_topic";a:6:{s:8:"filename";s:29:"sources/cns_topics_action.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:63:"The ID of the forum the topic will be in (null: Private Topic).";s:11:"phpdoc_name";s:8:"forum_id";}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:10:"SHORT_TEXT";s:11:"description";s:25:"Description of the topic.";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:8:"emoticon";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:51:"The theme image code of the emoticon for the topic.";s:11:"phpdoc_name";s:8:"emoticon";}i:3;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:67:"Whether the topic is validated (null: detect whether it should be).";s:11:"phpdoc_name";s:9:"validated";}i:4;a:7:{s:4:"name";s:4:"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:26:"Whether the topic is open.";s:11:"phpdoc_name";s:4:"open";}i:5;a:7:{s:4:"name";s:6:"pinned";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:28:"Whether the topic is pinned.";s:11:"phpdoc_name";s:6:"pinned";}i:6;a:7:{s:4:"name";s:4:"sunk";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:26:"Whether the topic is sunk.";s:11:"phpdoc_name";s:4:"sunk";}i:7;a:7:{s:4:"name";s:9:"cascading";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:31:"Whether the topic is cascading.";s:11:"phpdoc_name";s:9:"cascading";}i:8;a:7:{s:4:"name";s:7:"pt_from";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:71:"If it is a Private Topic, who is it 'from' (null: not a Private Topic).";s:11:"phpdoc_name";s:7:"pt_from";}i:9;a:7:{s:4:"name";s:5:"pt_to";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:69:"If it is a Private Topic, who is it 'to' (null: not a Private Topic).";s:11:"phpdoc_name";s:5:"pt_to";}i:10;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:73:"Whether to check the poster has permissions for the given topic settings.";s:11:"phpdoc_name";s:11:"check_perms";}i:11;a:7:{s:4:"name";s:9:"num_views";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:46:"The number of times the topic has been viewed.";s:11:"phpdoc_name";s:9:"num_views";}i:12;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:13;a:7:{s:4:"name";s:16:"description_link";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:55:"Link related to the topic (e.g. link to view a ticket).";s:11:"phpdoc_name";s:16:"description_link";}}s:4:"name";s:14:"cns_make_topic";s:11:"description";s:135:"Add a topic.This does not create the first post, you need to do an cns_make_post call for that. Conversr allows topics with zero posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the newly created topic.";}}s:14:"cns_edit_topic";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:50:"The ID of the topic to edit (null: Private Topic).";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:11:"description";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:47:"Description of the topic (null: do not change).";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:8:"emoticon";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:67:"The image code of the emoticon for the topic (null: do not change).";s:11:"phpdoc_name";s:8:"emoticon";}i:3;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:53:"Whether the topic is validated (null: do not change).";s:11:"phpdoc_name";s:9:"validated";}i:4;a:7:{s:4:"name";s:4:"open";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:48:"Whether the topic is open (null: do not change).";s:11:"phpdoc_name";s:4:"open";}i:5;a:7:{s:4:"name";s:6:"pinned";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:50:"Whether the topic is pinned (null: do not change).";s:11:"phpdoc_name";s:6:"pinned";}i:6;a:7:{s:4:"name";s:4:"sunk";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:48:"Whether the topic is sunk (null: do not change).";s:11:"phpdoc_name";s:4:"sunk";}i:7;a:7:{s:4:"name";s:9:"cascading";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:"Whether the topic is cascading (null: do not change).";s:11:"phpdoc_name";s:9:"cascading";}i:8;a:7:{s:4:"name";s:6:"reason";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:27:"The reason for this action.";s:11:"phpdoc_name";s:6:"reason";}i:9;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:7:"?string";s:11:"description";s:46:"New title for the topic (null: do not change).";s:11:"phpdoc_name";s:5:"title";}i:10;a:7:{s:4:"name";s:16:"description_link";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:77:"Link related to the topic (e.g. link to view a ticket) (null: do not change).";s:11:"phpdoc_name";s:16:"description_link";}i:11;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:12;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:13;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:14:"cns_edit_topic";s:11:"description";s:13:"Edit a topic.";s:5:"flags";a:0:{}}s:16:"cns_delete_topic";a:6:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:4:{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:30:"The ID of the topic to delete.";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:7:{s:4:"name";s:6:"reason";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 reason for this action .";s:11:"phpdoc_name";s:6:"reason";}i:2;a:7:{s:4:"name";s:20:"post_target_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:68:"Where topic to move posts in this topic to (null: delete the posts).";s:11:"phpdoc_name";s:20:"post_target_topic_id";}i:3;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";}}s:4:"name";s:16:"cns_delete_topic";s:11:"description";s:15:"Delete a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:123:"The forum ID the topic is in (could be found without calling the function, but as we've looked it up, it is worth keeping).";}}s:15:"cns_move_topics";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:38:"The forum the topics are currently in.";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:9:"AUTO_LINK";s:11:"description";s:40:"The forum the topics are being moved to.";s:11:"phpdoc_name";s:2:"to";}i:2;a:7:{s:4:"name";s:6:"topics";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:74:"A list of the topic IDs to move (null: move all topics from source forum).";s:11:"phpdoc_name";s:6:"topics";}i:3;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";}}s:4:"name";s:15:"cns_move_topics";s:11:"description";s:17:"Move some topics.";s:5:"flags";a:0:{}}s:16:"cns_invite_to_pt";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:2:{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:21:"Member getting access";s:11:"phpdoc_name";s:9:"member_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:9:"The topic";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:16:"cns_invite_to_pt";s:11:"description";s:24:"Invite a member to a PT.";s:5:"flags";a:0:{}}s:20:"send_pt_notification";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:23:"The ID of the post made";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"PT title";s:11:"phpdoc_name";s:7:"subject";}i:2;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:15:"ID of the topic";s:11:"phpdoc_name";s:8:"topic_id";}i:3;a:5:{s:4:"name";s:5:"to_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:21:"Member getting the PT";s:11:"phpdoc_name";s:5:"to_id";}i:4;a:7:{s:4:"name";s:7:"from_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:44:"Member posting the PT (null: current member)";s:11:"phpdoc_name";s:7:"from_id";}i:5;a:7:{s:4:"name";s:12:"post_comcode";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:47:"Post text (null: unknown, lookup from $post_id)";s:11:"phpdoc_name";s:12:"post_comcode";}i:6;a:7:{s:4:"name";s:11:"mark_unread";s:7:"default";s:13:"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 also mark the topic as unread";s:11:"phpdoc_name";s:11:"mark_unread";}}s:4:"name";s:20:"send_pt_notification";s:11:"description";s:27:"Send a new-PT notification.";s:5:"flags";a:0:{}}s:25:"handle_topic_ticket_reply";a:5:{s:8:"filename";s:30:"sources/cns_topics_action2.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:8:"Forum ID";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:8:"Topic ID";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:10:"SHORT_TEXT";s:11:"description";s:11:"Topic title";s:11:"phpdoc_name";s:11:"topic_title";}i:3;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"Post made";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:25:"handle_topic_ticket_reply";s:11:"description";s:45:"If necessary, send out a support ticket reply";s:5:"flags";a:0:{}}s:16:"find_post_id_url";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The post ID.";s:11:"phpdoc_name";s:7:"post_id";}}s:4:"name";s:16:"find_post_id_url";s:11:"description";s:23:"Find the URL to a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:8:"The URL.";}}s:21:"find_first_unread_url";a:6:{s:8:"filename";s:25:"sources/cns_topicview.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 topic ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:21:"find_first_unread_url";s:11:"description";s:50:"Find the URL to the latest unread post in a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:8:"The URL.";}}s:28:"cns_get_details_to_show_post";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"_postdetails";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The post row.";s:11:"phpdoc_name";s:12:"_postdetails";}i:1;a:5:{s:4:"name";s:10:"topic_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The topic row.";s:11:"phpdoc_name";s:10:"topic_info";}i:2;a:7:{s:4:"name";s:9:"only_post";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the post is the only post in the topic.";s:11:"phpdoc_name";s:9:"only_post";}}s:4:"name";s:28:"cns_get_details_to_show_post";s:11:"description";s:113:"Turn a post row, into a detailed map of information that is suitable for use as display parameters for that post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The detailed map.";}}s:17:"cns_read_in_topic";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:63:"The ID of the topic we are getting details of (null: whispers).";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:110:"The start row for getting details of posts in the topic (i.e. 0 is start of topic, higher is further through).";s:11:"phpdoc_name";s:5:"start";}i:2;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:45:"The maximum number of posts to get detail of.";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:17:"view_poll_results";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:106:"Whether we are viewing poll results for the topic (if there is no poll for the topic, this is irrelevant).";s:11:"phpdoc_name";s:17:"view_poll_results";}i:4;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";}}s:4:"name";s:17:"cns_read_in_topic";s:11:"description";s:55:"Read in a great big map of details relating to a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The map of details.";}}s:24:"cns_cache_member_details";a:5:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"members";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"List of members.";s:11:"phpdoc_name";s:7:"members";}}s:4:"name";s:24:"cns_cache_member_details";s:11:"description";s:95:"Mass-load details for a list of members into memory, to reduce queries when we access it later.";s:5:"flags";a:0:{}}s:23:"cns_render_post_buttons";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"topic_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"Map of topic info.";s:11:"phpdoc_name";s:10:"topic_info";}i:1;a:5:{s:4:"name";s:12:"_postdetails";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Map of post info.";s:11:"phpdoc_name";s:12:"_postdetails";}i:2;a:5:{s:4:"name";s:9:"may_reply";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the current member may reply to the topic";s:11:"phpdoc_name";s:9:"may_reply";}i:3;a:7:{s:4:"name";s:17:"rendering_context";s:7:"default";s:3:"cns";s:11:"default_raw";s:5:"'cns'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Rendering context";s:11:"phpdoc_name";s:17:"rendering_context";}}s:4:"name";s:23:"cns_render_post_buttons";s:11:"description";s:37:"Get buttons for showing under a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The buttons.";}}s:21:"cns_get_post_emphasis";a:6:{s:8:"filename";s:25:"sources/cns_topicview.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"_postdetails";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Map of post info.";s:11:"phpdoc_name";s:12:"_postdetails";}}s:4:"name";s:21:"cns_get_post_emphasis";s:11:"description";s:27:"Get post emphasis Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The Tempcode.";}}s:13:"init__comcode";a:5:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__comcode";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"init_valid_comcode_tags";a:5:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"init_valid_comcode_tags";s:11:"description";s:100:"Set up the VALID_COMCODE_TAGS global. It uses a bit of memory, so for performance we do it on-demand";s:5:"flags";a:0:{}}s:31:"init_potential_js_naughty_array";a:5:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"init_potential_js_naughty_array";s:11:"description";s:108:"Set up the POTENTIAL_JS_NAUGHTY_ARRAY global. It uses a bit of memory, so for performance we do it on-demand";s:5:"flags";a:0:{}}s:14:"comcode_escape";a:6:{s:8:"filename";s:19:"sources/comcode.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:8:"Raw text";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:14:"comcode_escape";s:11:"description";s:47:"Make text usable inside a string inside Comcode";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Escaped text";}}s:15:"html_to_comcode";a:6:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:24:"The HTML to be converted";s:11:"phpdoc_name";s:4:"html";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether to force full conversion regardless of settings";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:15:"html_to_comcode";s:11:"description";s:28:"Convert (X)HTML into Comcode";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The equivalent Comcode";}}s:15:"apply_emoticons";a:6:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:61:"The text to add emoticons to (assumption: that this is XHTML)";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:15:"apply_emoticons";s:11:"description";s:325:"Get the text with all the emoticon codes replaced with the correct XHTML. Emoticons are determined by your forum system.This is not used in the normal Comcode chain - it's for non-Comcode things that require emoticons (actually in reality it is used in the Comcode chain if the optimiser sees that a full parse is not needed)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:50:"The XHTML with the image-substitution of emoticons";}}s:19:"comcode_to_tempcode";a:6:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The Comcode to convert";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:7:{s:4:"name";s:13:"source_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:194:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:304:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one. Note that if this is passed false, and $source_member is an admin, it will be parsed using admin privileges anyway.";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:7:{s:4:"name";s:8:"wrap_pos";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:"The position to conduct wordwrapping at (null: do not conduct word-wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:4;a:7:{s:4:"name";s:7:"pass_id";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:260:"A special identifier that can identify this resource in a sea of our resources of this class; usually this can be ignored, but may be used to provide a binding between JavaScript in evaluated Comcode, and the surrounding environment (null: no explicit binding)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:6;a:7:{s:4:"name";s:14:"semiparse_mode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:199:"Whether to parse so as to create something that would fit inside a semihtml tag. It means we generate HTML, with Comcode written into it where the tag could never be reverse-converted (e.g. a block).";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:7;a:7:{s:4:"name";s:13:"preparse_mode";s:7:"default";s:13:"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 this is being pre-parsed, to pick up errors before row insertion.";s:11:"phpdoc_name";s:13:"preparse_mode";}i:8;a:7:{s:4:"name";s:15:"is_all_semihtml";s:7:"default";s:13:"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 treat this whole thing as being wrapped in semihtml, but apply normal security otherwise.";s:11:"phpdoc_name";s:15:"is_all_semihtml";}i:9;a:7:{s:4:"name";s:15:"structure_sweep";s:7:"default";s:13:"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 we are only doing this parse to find the title structure";s:11:"phpdoc_name";s:15:"structure_sweep";}i:10;a:7:{s:4:"name";s:10:"check_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:117:"Whether to only check the Comcode. It's best to use the check_comcode function which will in turn use this parameter.";s:11:"phpdoc_name";s:10:"check_only";}i:11;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:12;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}}s:4:"name";s:19:"comcode_to_tempcode";s:11:"description";s:326:"Convert the specified Comcode (unknown format) into a Tempcode tree. You shouldn't output the Tempcode tree to the browser, as it looks really horrible. If you are in a rare case where you need to output directly (not through templates), you should call the evaluate method on the Tempcode object, to convert it into a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The Tempcode generated";}}s:13:"strip_comcode";a:6:{s:8:"filename";s:19:"sources/comcode.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Plain-text/Comcode";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:11:"for_extract";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether this is for generating an extract that does not need to be fully comprehended (i.e. favour brevity)";s:11:"phpdoc_name";s:11:"for_extract";}i:2;a:7:{s:4:"name";s:16:"tags_to_preserve";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:37:"List of tags to preserve (null: none)";s:11:"phpdoc_name";s:16:"tags_to_preserve";}}s:4:"name";s:13:"strip_comcode";s:11:"description";s:140:"Strip out any Comcode from this "plain text". Useful for semantic text is wanted but where Comcode is used as "the next best thing" we have.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"Purified plain-text";}}s:25:"_get_details_comcode_tags";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"_get_details_comcode_tags";s:11:"description";s:47:"Get some metadata of what Comcode tags we have.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: core tags (map to tag parameters), custom tags (map to Custom Comcode row).";}}s:15:"_get_group_tags";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"group";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:"Group Name (null: return a specific group)";s:11:"phpdoc_name";s:5:"group";}}s:4:"name";s:15:"_get_group_tags";s:11:"description";s:30:"Get the Comcode tags in groups";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:50:"Returns each Group name as key, values as its tags";}}s:21:"_get_non_wysiwyg_tags";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_non_wysiwyg_tags";s:11:"description";s:92:"Get the non-WYSIWYG tags (ones the WYSIWYG cannot do itself, so are needed even if it is on)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"List of non-WYSIWYG tags";}}s:21:"comcode_helper_script";a:5:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"comcode_helper_script";s:11:"description";s:36:"Outputs a Comcode tag helper dialog.";s:5:"flags";a:0:{}}s:29:"comcode_helper_script_replace";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"comcode_helper_script_replace";s:11:"description";s:47:"Render a step of the Comcode tag helper dialog.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The step UI.";}}s:27:"comcode_helper_script_step1";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"comcode_helper_script_step1";s:11:"description";s:47:"Render a step of the Comcode tag helper dialog.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The step UI.";}}s:27:"comcode_helper_script_step2";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"comcode_helper_script_step2";s:11:"description";s:47:"Render a step of the Comcode tag helper dialog.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The step UI.";}}s:32:"_find_comcode_tag_embed_required";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:32:"_find_comcode_tag_embed_required";s:11:"description";s:57:"Find if a Comcode tag has required contents (hard-coded).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether it has required contents.";}}s:42:"_try_for_special_comcode_tag_all_params_ui";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"UI fields.";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:15:"fields_advanced";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Advanced UI fields.";s:11:"phpdoc_name";s:15:"fields_advanced";}i:4;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Hidden fields.";s:11:"phpdoc_name";s:6:"hidden";}i:5;a:5:{s:4:"name";s:17:"done_tag_contents";s:3:"ref";b:1;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether the tag contents input has also been handled here.";s:11:"phpdoc_name";s:17:"done_tag_contents";}i:6;a:5:{s:4:"name";s:8:"defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Default parameter values.";s:11:"phpdoc_name";s:8:"defaults";}i:7;a:5:{s:4:"name";s:6:"params";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"List of tag parameters.";s:11:"phpdoc_name";s:6:"params";}i:8;a:5:{s:4:"name";s:10:"javascript";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:21:"JavaScript to deploy.";s:11:"phpdoc_name";s:10:"javascript";}i:9;a:5:{s:4:"name";s:7:"preview";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether previewing will be allowed.";s:11:"phpdoc_name";s:7:"preview";}}s:4:"name";s:42:"_try_for_special_comcode_tag_all_params_ui";s:11:"description";s:69:"See if we have specialisation code for a Comcode tag parameter input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether we did render specialisation code (if not, standard code will be deployed by the calling function).";}}s:46:"_try_for_special_comcode_tag_specific_param_ui";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The parameter.";s:11:"phpdoc_name";s:5:"param";}i:3;a:5:{s:4:"name";s:14:"parameter_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:45:"Default human-readable name of the parameter.";s:11:"phpdoc_name";s:14:"parameter_name";}i:4;a:5:{s:4:"name";s:12:"descriptiont";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Default description of the parameter.";s:11:"phpdoc_name";s:12:"descriptiont";}i:5;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"UI fields.";s:11:"phpdoc_name";s:6:"fields";}i:6;a:5:{s:4:"name";s:15:"fields_advanced";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Advanced UI fields.";s:11:"phpdoc_name";s:15:"fields_advanced";}i:7;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Hidden fields.";s:11:"phpdoc_name";s:6:"hidden";}i:8;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Default parameter value.";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:46:"_try_for_special_comcode_tag_specific_param_ui";s:11:"description";s:69:"See if we have specialisation code for a Comcode tag parameter input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether we did render specialisation code (if not, standard code will be deployed by the calling function).";}}s:27:"_get_comcode_tag_param_name";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:1;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Parameter name.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:27:"_get_comcode_tag_param_name";s:11:"description";s:48:"Get the title for a Comcode tag parameter title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Title.";}}s:43:"_try_for_special_comcode_tag_extra_param_ui";a:5:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"UI fields.";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:15:"fields_advanced";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Advanced UI fields.";s:11:"phpdoc_name";s:15:"fields_advanced";}i:4;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Hidden fields.";s:11:"phpdoc_name";s:6:"hidden";}i:5;a:5:{s:4:"name";s:8:"defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Default parameter values.";s:11:"phpdoc_name";s:8:"defaults";}}s:4:"name";s:43:"_try_for_special_comcode_tag_extra_param_ui";s:11:"description";s:86:"See if we have specialisation code for inserting an extra Comcode tag parameter input.";s:5:"flags";a:0:{}}s:49:"_try_for_special_comcode_tag_specific_contents_ui";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"actual_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Actual tag being read.";s:11:"phpdoc_name";s:10:"actual_tag";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"UI fields.";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:15:"fields_advanced";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Advanced UI fields.";s:11:"phpdoc_name";s:15:"fields_advanced";}i:4;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Hidden fields.";s:11:"phpdoc_name";s:6:"hidden";}i:5;a:5:{s:4:"name";s:13:"default_embed";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Default embed contents.";s:11:"phpdoc_name";s:13:"default_embed";}i:6;a:5:{s:4:"name";s:10:"javascript";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:21:"JavaScript to deploy.";s:11:"phpdoc_name";s:10:"javascript";}i:7;a:5:{s:4:"name";s:7:"preview";s:3:"ref";b:1;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether previewing will be allowed.";s:11:"phpdoc_name";s:7:"preview";}}s:4:"name";s:49:"_try_for_special_comcode_tag_specific_contents_ui";s:11:"description";s:66:"See if we have specialisation code for Comcode tag contents input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether we did render specialisation code (if not, standard code will be deployed by the calling function).";}}s:27:"comcode_helper_script_step3";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"comcode_helper_script_step3";s:11:"description";s:47:"Render a step of the Comcode tag helper dialog.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The step UI.";}}s:32:"_get_preview_environment_comcode";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Tag being read.";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:32:"_get_preview_environment_comcode";s:11:"description";s:46:"Reads a Comcode tag from the POST environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"The full Comcode for that tag.";}}s:18:"get_defaults_multi";a:6:{s:8:"filename";s:23:"sources/comcode_add.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"All default values for the tag.";s:11:"phpdoc_name";s:8:"defaults";}i:1;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"Match name for the parameter set.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"get_defaults_multi";s:11:"description";s:99:"Locate a set of consistently named parameters and generate an array of them for a multi-line input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"List of values.";}}s:13:"check_comcode";a:5:{s:8:"filename";s:25:"sources/comcode_check.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The Comcode to convert";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:7:{s:4:"name";s:13:"source_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:194:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:7:{s:4:"name";s:22:"attachment_possibility";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:135:"Whether there might be new attachments. If there are, we will check as lax- as attachments are always preserved by forcing lax parsing.";s:11:"phpdoc_name";s:22:"attachment_possibility";}}s:4:"name";s:13:"check_comcode";s:11:"description";s:27:"Check the Comcode is valid.";s:5:"flags";a:0:{}}s:32:"comcode_censored_raw_code_access";a:6:{s:8:"filename";s:27:"sources/comcode_cleanup.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:7:"Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:7:{s:4:"name";s:10:"aggressive";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:124:"Force an HTML-evaluation of the Comcode through this security ID then back to Comcode, as a security technique (null: don't)";s:11:"phpdoc_name";s:10:"aggressive";}}s:4:"name";s:32:"comcode_censored_raw_code_access";s:11:"description";s:194:"Censor some Comcode raw code so that another user can see it.This function isn't designed to be perfectly secure, and we don't guarantee it's always run, but as a rough thing we prefer to do it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Censored Comcode";}}s:25:"download_associated_media";a:5:{s:8:"filename";s:27:"sources/comcode_cleanup.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:14:"Comcode / HTML";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:25:"download_associated_media";s:11:"description";s:42:"Filter external media, copying it locally.";s:5:"flags";a:0:{}}s:26:"_download_associated_media";a:5:{s:8:"filename";s:27:"sources/comcode_cleanup.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:14:"Comcode / HTML";s:11:"phpdoc_name";s:4:"text";}i:1;a:5:{s:4:"name";s:7:"old_url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"Old URL to download and replace";s:11:"phpdoc_name";s:7:"old_url";}}s:4:"name";s:26:"_download_associated_media";s:11:"description";s:60:"Filter external media, copying it locally (helper function).";s:5:"flags";a:0:{}}s:22:"init__comcode_compiler";a:5:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"init__comcode_compiler";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:28:"wysiwyg_comcode_markup_style";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The Comcode tag";s:11:"phpdoc_name";s:3:"tag";}i:1;a:7:{s:4:"name";s:10:"attributes";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:37:"The parameters (null: don't consider)";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:7:{s:4:"name";s:5:"embed";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:46:"The contents of the tag (null: don't consider)";s:11:"phpdoc_name";s:5:"embed";}i:3;a:7:{s:4:"name";s:11:"html_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether HTML structure errors have been spotted so far (limits how $semiparse_mode rendering works)";s:11:"phpdoc_name";s:11:"html_errors";}i:4;a:7:{s:4:"name";s:12:"conservative";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Don't add things to WYSIWYG_COMCODE__HTML that may not be in some situations";s:11:"phpdoc_name";s:12:"conservative";}}s:4:"name";s:28:"wysiwyg_comcode_markup_style";s:11:"description";s:51:"Find how Comcode will be represented in the editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:29:"The Comcode integration style";}}s:26:"add_wysiwyg_comcode_markup";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The Comcode tag";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The parameters";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:5:"embed";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:23:"The contents of the tag";s:11:"phpdoc_name";s:5:"embed";}i:3;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:65:"Whether we are in semihtml mode. We are always in semi-parse mode";s:11:"phpdoc_name";s:8:"semihtml";}i:4;a:7:{s:4:"name";s:6:"method";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:"Display method (null: auto-detect)";s:11:"phpdoc_name";s:6:"method";}i:5;a:7:{s:4:"name";s:11:"html_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether HTML structure errors have been spotted so far (limits how $semiparse_mode rendering works)";s:11:"phpdoc_name";s:11:"html_errors";}}s:4:"name";s:26:"add_wysiwyg_comcode_markup";s:11:"description";s:64:"Output a Comcode tag in WYSIWYG-editor format, for tidy editing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:38:"The HTML (null: render as native HTML)";}}s:21:"__comcode_to_tempcode";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The Comcode to convert";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:171:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:5:{s:4:"name";s:8:"wrap_pos";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"The position to conduct wordwrapping at (null: do not conduct word-wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:4;a:5:{s:4:"name";s:7:"pass_id";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:260:"A special identifier that can identify this resource in a sea of our resources of this class; usually this can be ignored, but may be used to provide a binding between JavaScript in evaluated Comcode, and the surrounding environment (null: no explicit binding)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:6;a:5:{s:4:"name";s:14:"semiparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:199:"Whether to parse so as to create something that would fit inside a semihtml tag. It means we generate HTML, with Comcode written into it where the tag could never be reverse-converted (e.g. a block).";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:7;a:5:{s:4:"name";s:13:"preparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether this is being pre-parsed, to pick up errors before row insertion.";s:11:"phpdoc_name";s:13:"preparse_mode";}i:8;a:5:{s:4:"name";s:15:"is_all_semihtml";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:100:"Whether to treat this whole thing as being wrapped in semihtml, but apply normal security otherwise.";s:11:"phpdoc_name";s:15:"is_all_semihtml";}i:9;a:5:{s:4:"name";s:15:"structure_sweep";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether we are only doing this parse to find the title structure";s:11:"phpdoc_name";s:15:"structure_sweep";}i:10;a:5:{s:4:"name";s:10:"check_only";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:117:"Whether to only check the Comcode. It's best to use the check_comcode function which will in turn use this parameter.";s:11:"phpdoc_name";s:10:"check_only";}i:11;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:12;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}}s:4:"name";s:21:"__comcode_to_tempcode";s:11:"description";s:323:"Convert the specified Comcode (text format) into a Tempcode tree. You shouldn't output the Tempcode tree to the browser, as it looks really horrible. If you are in a rare case where you need to output directly (not through templates), you should call the evaluate method on the Tempcode object, to convert it into a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The Tempcode generated";}}s:12:"in_tag_stack";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"tag_stack";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The tag stack";s:11:"phpdoc_name";s:9:"tag_stack";}i:1;a:5:{s:4:"name";s:4:"tags";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:8:"The tags";s:11:"phpdoc_name";s:4:"tags";}}s:4:"name";s:12:"in_tag_stack";s:11:"description";s:42:"Find if any of some tags are in the stack.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether one is present";}}s:11:"_opened_tag";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:171:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:13:"attribute_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The attribute map of the tag";s:11:"phpdoc_name";s:13:"attribute_map";}i:3;a:5:{s:4:"name";s:11:"current_tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The identifier for the tag";s:11:"phpdoc_name";s:11:"current_tag";}i:4;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The offset of the tag in the Comcode";s:11:"phpdoc_name";s:3:"pos";}i:5;a:5:{s:4:"name";s:17:"comcode_dangerous";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the parser allows dangerous Comcode";s:11:"phpdoc_name";s:17:"comcode_dangerous";}i:6;a:5:{s:4:"name";s:22:"comcode_dangerous_html";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the parser allows dangerous HTML";s:11:"phpdoc_name";s:22:"comcode_dangerous_html";}i:7;a:5:{s:4:"name";s:25:"in_separate_parse_section";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether the parser is/was in a separate parse section (e.g. a 'code' tag)";s:11:"phpdoc_name";s:25:"in_separate_parse_section";}i:8;a:5:{s:4:"name";s:7:"in_html";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the parser is/was in an HTML region";s:11:"phpdoc_name";s:7:"in_html";}i:9;a:5:{s:4:"name";s:11:"in_semihtml";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the parser is/was in a Semi-HTML region";s:11:"phpdoc_name";s:11:"in_semihtml";}i:10;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the tag is a closing tag";s:11:"phpdoc_name";s:5:"close";}i:11;a:5:{s:4:"name";s:3:"len";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:25:"The length of the Comcode";s:11:"phpdoc_name";s:3:"len";}i:12;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:24:"The Comcode being parsed";s:11:"phpdoc_name";s:7:"comcode";}}s:4:"name";s:11:"_opened_tag";s:11:"description";s:87:"Helper function for setting up and juggling variables after reaching a new Comcode tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:31:"A tuple of new parser settings.";}}s:11:"filter_html";a:5:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:171:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The offset of the tag in the Comcode";s:11:"phpdoc_name";s:3:"pos";}i:3;a:5:{s:4:"name";s:3:"len";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:25:"The length of the Comcode";s:11:"phpdoc_name";s:3:"len";}i:4;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:24:"The Comcode being parsed";s:11:"phpdoc_name";s:7:"comcode";}i:5;a:5:{s:4:"name";s:7:"in_html";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the parser is/was in an HTML region";s:11:"phpdoc_name";s:7:"in_html";}i:6;a:5:{s:4:"name";s:11:"in_semihtml";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the parser is/was in a Semi-HTML region";s:11:"phpdoc_name";s:11:"in_semihtml";}}s:4:"name";s:11:"filter_html";s:11:"description";s:23:"Filter HTML for safety.";s:5:"flags";a:0:{}}s:17:"_close_open_lists";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"list_indent";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:46:"The depth level of lists that we need to close";s:11:"phpdoc_name";s:11:"list_indent";}i:1;a:6:{s:4:"name";s:9:"list_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"List-type code";s:11:"phpdoc_name";s:9:"list_type";s:3:"set";s:6:"ul a 1";}}s:4:"name";s:17:"_close_open_lists";s:11:"description";s:33:"Get HTML to close any open lists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:157:"The output needed to close the lists, and the new list indentation (always zero). Done like this so we can use 'list' to set both at once in the main parser.";}}s:24:"parse_single_comcode_tag";a:6:{s:8:"filename";s:28:"sources/comcode_compiler.php";s:10:"parameters";a:2:{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:21:"The data being parsed";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:3:"tag";s:7:"default";s:3:"\w+";s:11:"default_raw";s:5:"'\w+'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"The tag we're expecting to see here / a regexp";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:24:"parse_single_comcode_tag";s:11:"description";s:64:"Parse a single tag. For use separately, not used by main parser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"A map of parsed attributes";}}s:23:"init__comcode_from_html";a:5:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"init__comcode_from_html";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:14:"_img_tag_fixup";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:14:"_img_tag_fixup";s:11:"description";s:84:"Used by semihtml_to_comcode to turn to \[img\]. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:18:"_img_tag_fixup_raw";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:18:"_img_tag_fixup_raw";s:11:"description";s:100:"Used by semihtml_to_comcode to turn fix URLs in to be absolute. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:17:"_a_tag_link_fixup";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:17:"_a_tag_link_fixup";s:11:"description";s:80:"Used by semihtml_to_comcode to fix tag links. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:16:"_css_color_fixup";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:16:"_css_color_fixup";s:11:"description";s:102:"Used by semihtml_to_comcode to fix CSS colours aways from RGB notation. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:15:"_css_quot_fixup";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:15:"_css_quot_fixup";s:11:"description";s:115:"Used by semihtml_to_comcode to make it so inline CSS with quotes uses single quotes. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:14:"_cdata_protect";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:14:"_cdata_protect";s:11:"description";s:109:"Apply temporary ad hoc-escaping to a CDATA area (we'll reverse convert later). preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:16:"_codetag_protect";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:16:"_codetag_protect";s:11:"description";s:108:"Apply temporary ad hoc-escaping to a code tags (we'll reverse convert later). preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:18:"_codetag_unprotect";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:18:"_codetag_unprotect";s:11:"description";s:108:"Apply temporary ad hoc-escaping to a code tags (we'll reverse convert later). preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:25:"_reorder_xhtml_attributes";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:25:"_reorder_xhtml_attributes";s:11:"description";s:101:"Reorder XHTML attributes alphabetically, so our regexp's match better. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:23:"_reorder_css_properties";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:23:"_reorder_css_properties";s:11:"description";s:101:"Reorder style properties alphabetically, so our regexp's match better. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:25:"_semihtml_to_comcode_wrap";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:25:"_semihtml_to_comcode_wrap";s:11:"description";s:86:"Convert Semi-HTML into Comcode. Cleanup where possible. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:12:"_debuttonise";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:12:"_debuttonise";s:11:"description";s:99:"Extract underlying Comcode from an editor Comcode-management button. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:11:"_detagonise";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:11:"_detagonise";s:11:"description";s:81:"Extract underlying Comcode from an editor XML tag. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:15:"_dedirectiveise";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:16:"Array of matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:15:"_dedirectiveise";s:11:"description";s:92:"Extract underlying Tempcode directive from an editor XML tag. preg_replace_callback callback";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Substituted text";}}s:29:"remove_wysiwyg_comcode_markup";a:5:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:9:"Semi-HTML";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:29:"remove_wysiwyg_comcode_markup";s:11:"description";s:100:"Cleanup HTML coming out of the WYSIWYG editor, converting represented Comcode back to proper Comcode";s:5:"flags";a:0:{}}s:30:"convert_html_headers_to_titles";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"Semi-HTML";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:30:"convert_html_headers_to_titles";s:11:"description";s:38:"Convert HTML headers to Comcode titles";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:43:"Semi-HTML, with headers converted to titles";}}s:19:"force_clean_comcode";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"The messy Comcode.";s:11:"phpdoc_name";s:7:"comcode";}}s:4:"name";s:19:"force_clean_comcode";s:11:"description";s:47:"Convert HTML-filled Comcode to cleaner Comcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:20:"The cleaned Comcode.";}}s:20:"wysiwygify_media_set";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:29:"The Semi-HTML to be converted";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:20:"wysiwygify_media_set";s:11:"description";s:71:"Strip down the contents of the media_set tag for easier WYSIWYG-editing";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The equivalent Comcode";}}s:19:"semihtml_to_comcode";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:29:"The Semi-HTML to be converted";s:11:"phpdoc_name";s:8:"semihtml";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether to force full conversion regardless of settings";s:11:"phpdoc_name";s:5:"force";}i:2;a:7:{s:4:"name";s:5:"quick";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether to trust the HTML is valid rather than cleaning it up (e.g. for Composr-generated HTML)";s:11:"phpdoc_name";s:5:"quick";}}s:4:"name";s:19:"semihtml_to_comcode";s:11:"description";s:54:"Convert Semi-HTML into comcode. Cleanup where possible";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The equivalent Comcode";}}s:23:"comcode_strip_html_tags";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.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:23:"comcode_strip_html_tags";s:11:"description";s:125:"preg_replace callback to strip HTML tags from inside a Comcode tag, except formatting ones that we'll convert to white-space.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:20:"comcode_preg_replace";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"element";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The element name to replace over";s:11:"phpdoc_name";s:7:"element";}i:1;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:7:"Pattern";s:11:"phpdoc_name";s:7:"pattern";}i:2;a:5:{s:4:"name";s:11:"replacement";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:71:"Replacement (string or single element array specifying a function name)";s:11:"phpdoc_name";s:11:"replacement";}i:3;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Haystack";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:20:"comcode_preg_replace";s:11:"description";s:315:"Do a regular expression match, locked correctly to single Comcode elements. This is necessary to make sure nesting is handled correctly, which regular expressions cannot do on their own.This is a good test case:exit(comcode_preg_replace('test','#\[test\](.*)\[/test\]#','>${1}<','[test]x[test a]y[/test]z[/test]'));";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:23:"array_html_preg_replace";a:6:{s:8:"filename";s:29:"sources/comcode_from_html.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"element";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The element name to replace over";s:11:"phpdoc_name";s:7:"element";}i:1;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:37:"A list of pairs: Pattern, Replacement";s:11:"phpdoc_name";s:5:"array";}i:2;a:5:{s:4:"name";s:8:"semihtml";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Haystack";s:11:"phpdoc_name";s:8:"semihtml";}}s:4:"name";s:23:"array_html_preg_replace";s:11:"description";s:332:"Do some regular expression matches, locked correctly to single HTML elements. This is necessary to make sure nesting is handled correctly, which regular expressions cannot do on their own.It is case-sensitive for performance reasons. But everyone uses lower-case tags for a long time now. Also assumes no tabs within tag definition.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:22:"init__comcode_renderer";a:5:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"init__comcode_renderer";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"_apply_emoticons";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:61:"The text to add emoticons to (assumption: that this is XHTML)";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:16:"_apply_emoticons";s:11:"description";s:325:"Get the text with all the emoticon codes replaced with the correct XHTML. Emoticons are determined by your forum system.This is not used in the normal Comcode chain - it's for non-Comcode things that require emoticons (actually in reality it is used in the Comcode chain if the optimiser sees that a full parse is not needed)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:50:"The XHTML with the image-substitution of emoticons";}}s:11:"do_emoticon";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"imgcode";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"Parameter triple(template,src,code)";s:11:"phpdoc_name";s:7:"imgcode";}}s:4:"name";s:11:"do_emoticon";s:11:"description";s:63:"Turn a triple of emoticon parameters into some actual Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:68:"Either a Tempcode result, or a string result, depending on $evaluate";}}s:28:"check_naughty_javascript_url";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:32:"The member who submitted the URL";s:11:"phpdoc_name";s:13:"source_member";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:16:"The URL to check";s:11:"phpdoc_name";s:3:"url";}i:2;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:28:"check_naughty_javascript_url";s:11:"description";s:186:"Check the specified URL for potentially malicious JavaScript/etc. If any is found, the hack attack is logged if in an active post request by the submitting member otherwise filtered out.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"Filtered input URL.";}}s:22:"_custom_comcode_import";a:5:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:22:"_custom_comcode_import";s:11:"description";s:54:"Load up Custom Comcode tags so that we may parse them.";s:5:"flags";a:0:{}}s:20:"_comcode_to_tempcode";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The Comcode to convert";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:7:{s:4:"name";s:13:"source_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:194:"The member the evaluation is running as. This is a security issue, and you should only run as an administrator if you have considered where the Comcode came from carefully (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:188:"Whether to explicitly execute this with admin rights. There are a few rare situations where this should be done, for data you know didn't come from a member, but is being evaluated by one.";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:7:{s:4:"name";s:8:"wrap_pos";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:"The position to conduct wordwrapping at (null: do not conduct word-wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:4;a:7:{s:4:"name";s:7:"pass_id";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:260:"A special identifier that can identify this resource in a sea of our resources of this class; usually this can be ignored, but may be used to provide a binding between JavaScript in evaluated Comcode, and the surrounding environment (null: no explicit binding)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:6;a:7:{s:4:"name";s:14:"semiparse_mode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:199:"Whether to parse so as to create something that would fit inside a semihtml tag. It means we generate HTML, with Comcode written into it where the tag could never be reverse-converted (e.g. a block).";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:7;a:7:{s:4:"name";s:13:"preparse_mode";s:7:"default";s:13:"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 this is being pre-parsed, to pick up errors before row insertion.";s:11:"phpdoc_name";s:13:"preparse_mode";}i:8;a:7:{s:4:"name";s:15:"is_all_semihtml";s:7:"default";s:13:"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 treat this whole thing as being wrapped in semihtml, but apply normal security otherwise.";s:11:"phpdoc_name";s:15:"is_all_semihtml";}i:9;a:7:{s:4:"name";s:15:"structure_sweep";s:7:"default";s:13:"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 we are only doing this parse to find the title structure";s:11:"phpdoc_name";s:15:"structure_sweep";}i:10;a:7:{s:4:"name";s:10:"check_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:117:"Whether to only check the Comcode. It's best to use the check_comcode function which will in turn use this parameter.";s:11:"phpdoc_name";s:10:"check_only";}i:11;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:12;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}}s:4:"name";s:20:"_comcode_to_tempcode";s:11:"description";s:326:"Convert the specified Comcode (unknown format) into a Tempcode tree. You shouldn't output the Tempcode tree to the browser, as it looks really horrible. If you are in a rare case where you need to output directly (not through templates), you should call the evaluate method on the Tempcode object, to convert it into a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The Tempcode generated";}}s:19:"comcode_parse_error";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"preparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether this is being pre-parsed, to pick up errors before row insertion.";s:11:"phpdoc_name";s:13:"preparse_mode";}i:1;a:5:{s:4:"name";s:8:"_message";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:91:"Error message details to pass to do_lang, or if the first in the list is null, use directly";s:11:"phpdoc_name";s:8:"_message";}i:2;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:54:"The position during parsing that the error occurred at";s:11:"phpdoc_name";s:3:"pos";}i:3;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:40:"The Comcode the parser error occurred in";s:11:"phpdoc_name";s:7:"comcode";}i:4;a:7:{s:4:"name";s:10:"check_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:34:"Whether to only check the Comcode.";s:11:"phpdoc_name";s:10:"check_only";}}s:4:"name";s:19:"comcode_parse_error";s:11:"description";s:28:"Show a Comcode parser error.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:114:"An error message to put in the output stream (shown in certain situations, where in other situations we bomb out).";}}s:32:"absoluteise_and_test_comcode_url";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"given_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:13:"URL to fixup.";s:11:"phpdoc_name";s:9:"given_url";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Comcode tag name.";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:32:"absoluteise_and_test_comcode_url";s:11:"description";s:74:"Make a given URL parameter an absolute URL; Fix any errors in it; Test it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:10:"Fixed URL.";}}s:8:"test_url";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"url_full";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"URL to test.";s:11:"phpdoc_name";s:8:"url_full";}i:1;a:5:{s:4:"name";s:8:"tag_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:49:"Comcode tag type, to which the URL is associated.";s:11:"phpdoc_name";s:8:"tag_type";}i:2;a:5:{s:4:"name";s:9:"given_url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"URL actually provided.";s:11:"phpdoc_name";s:9:"given_url";}i:3;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}}s:4:"name";s:8:"test_url";s:11:"description";s:28:"Test a URL as a broken link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:36:"Error message, or blank if no error.";}}s:16:"_do_tags_comcode";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The tag being converted";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:134:"A map of the attributes (name=>val) for the tag. Val is usually a string, although in select places, the XML parser may pass Tempcode.";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:5:"embed";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:149:"Tempcode of the inside of the tag ([between]THIS[/between]); the XML parser may pass in special stuff here, which is interpreted only for select tags";s:11:"phpdoc_name";s:5:"embed";}i:3;a:5:{s:4:"name";s:17:"comcode_dangerous";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether we are allowed to proceed even if this tag is marked as 'dangerous'";s:11:"phpdoc_name";s:17:"comcode_dangerous";}i:4;a:5:{s:4:"name";s:7:"pass_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:100:"A special identifier to mark where the resultant Tempcode is going to end up (e.g. the ID of a post)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:5:{s:4:"name";s:6:"marker";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The position this tag occurred at in the Comcode";s:11:"phpdoc_name";s:6:"marker";}i:6;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:46:"The member who is responsible for this Comcode";s:11:"phpdoc_name";s:13:"source_member";}i:7;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to check as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:8;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"The database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:9;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:26:"The whole chunk of Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:10;a:5:{s:4:"name";s:15:"structure_sweep";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is only a structure sweep";s:11:"phpdoc_name";s:15:"structure_sweep";}i:11;a:5:{s:4:"name";s:14:"semiparse_mode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether we are in semi-parse-mode (some tags might convert differently)";s:11:"phpdoc_name";s:14:"semiparse_mode";}i:12;a:7:{s:4:"name";s:14:"highlight_bits";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:"A list of words to highlight (null: none)";s:11:"phpdoc_name";s:14:"highlight_bits";}i:13;a:7:{s:4:"name";s:19:"on_behalf_of_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:235:"The member we are running on behalf of, with respect to how attachments are handled; we may use this members attachments that are already within this post, and our new attachments will be handed to this member (null: member evaluating)";s:11:"phpdoc_name";s:19:"on_behalf_of_member";}i:14;a:7:{s:4:"name";s:11:"in_semihtml";s:7:"default";s:13:"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 what we have came from inside a semihtml tag";s:11:"phpdoc_name";s:11:"in_semihtml";}i:15;a:7:{s:4:"name";s:15:"is_all_semihtml";s:7:"default";s:13:"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 what we have came from semihtml mode";s:11:"phpdoc_name";s:15:"is_all_semihtml";}i:16;a:7:{s:4:"name";s:11:"html_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether HTML structure errors have been spotted so far (limits how $semiparse_mode rendering works)";s:11:"phpdoc_name";s:11:"html_errors";}}s:4:"name";s:16:"_do_tags_comcode";s:11:"description";s:272:"Get Tempcode for a Comcode tag. This function should always return (errors should be placed in the Comcode output stream), for stability reasons (i.e. if you're submitting something, you can't have the whole submit process die half way through in an unstructured fashion).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:28:"The Tempcode for the Comcode";}}s:11:"do_code_box";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:5:{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:53:"The data type (e.g. file extension) we are rendering.";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:5:"embed";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"Contents (code) to render.";s:11:"phpdoc_name";s:5:"embed";}i:2;a:7:{s:4:"name";s:7:"numbers";s:7:"default";s:12:"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 show line numbers.";s:11:"phpdoc_name";s:7:"numbers";}i:3;a:7:{s:4:"name";s:11:"in_semihtml";s:7:"default";s:13:"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 what we have came from inside a semihtml tag";s:11:"phpdoc_name";s:11:"in_semihtml";}i:4;a:7:{s:4:"name";s:15:"is_all_semihtml";s:7:"default";s:13:"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 what we have came from semihtml mode";s:11:"phpdoc_name";s:15:"is_all_semihtml";}}s:4:"name";s:11:"do_code_box";s:11:"description";s:18:"Render a code box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"A pair: The Tempcode for the code box, and the title of the box";}}s:18:"_do_contents_level";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"tree_structure";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The TOC (sub)tree";s:11:"phpdoc_name";s:14:"tree_structure";}i:1;a:5:{s:4:"name";s:10:"list_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:36:"The list types to use for each level";s:11:"phpdoc_name";s:10:"list_types";}i:2;a:5:{s:4:"name";s:4:"base";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The level to start from";s:11:"phpdoc_name";s:4:"base";}i:3;a:7:{s:4:"name";s:9:"the_level";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:36:"The level we are at in the recursion";s:11:"phpdoc_name";s:9:"the_level";}}s:4:"name";s:18:"_do_contents_level";s:11:"description";s:46:"Recursive algorithm to make table of contents.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The TOC node.";}}s:17:"get_tutorial_link";a:6:{s:8:"filename";s:28:"sources/comcode_renderer.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:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:17:"get_tutorial_link";s:11:"description";s:42:"Find a specified tutorial link identifier.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:33:"The value (null: value not found)";}}s:17:"set_tutorial_link";a:5:{s:8:"filename";s:28:"sources/comcode_renderer.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:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:17:"set_tutorial_link";s:11:"description";s:66:"Set the specified value to the specified tutorial link identifier.";s:5:"flags";a:0:{}}s:22:"comcode_convert_script";a:5:{s:8:"filename";s:25:"sources/comcode_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"comcode_convert_script";s:11:"description";s:41:"AJAX script for HTML<>Comcode conversion.";s:5:"flags";a:0:{}}s:13:"reindent_code";a:6:{s:8:"filename";s:25:"sources/comcode_tools.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Code to reindent";s:11:"phpdoc_name";s:4:"text";}i:1;a:5:{s:4:"name";s:10:"is_comcode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the code is Comcode";s:11:"phpdoc_name";s:10:"is_comcode";}}s:4:"name";s:13:"reindent_code";s:11:"description";s:63:"Turn a triple of emoticon parameters into some actual tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Reindented code";}}s:14:"init__commandr";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__commandr";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"commandr_script";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"commandr_script";s:11:"description";s:22:"Commandr entry script.";s:5:"flags";a:0:{}}s:19:"get_queued_messages";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"xml";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Output as XML or Tempcode?";s:11:"phpdoc_name";s:3:"xml";}}s:4:"name";s:19:"get_queued_messages";s:11:"description";s:85:"Returns a string containing the XML for any messages queued to be sent to the client.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"The queued message XML";}}s:15:"do_command_help";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"command";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Command name";s:11:"phpdoc_name";s:7:"command";}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:7:"Options";s:11:"phpdoc_name";s:7:"options";}i:2;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:129:"Parameters (keys are the parameters, values are always set to true, i.e. it is an array of as many trues as there are parameters)";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:15:"do_command_help";s:11:"description";s:30:"Template for a command's help.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"Help template";}}s:33:"commandr_make_normal_html_visible";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:25:"HTML (string or Tempcode)";s:11:"phpdoc_name";s:4:"html";}}s:4:"name";s:33:"commandr_make_normal_html_visible";s:11:"description";s:60:"Put something non-Commandr in a standard box so it looks OK.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"Boxed HTML";}}s:17:"init__commandr_fs";a:5:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__commandr_fs";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:12:"init__config";a:5:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__config";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:10:"multi_lang";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"multi_lang";s:11:"description";s:39:"Find whether to run in multi-lang mode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether to run in multi-lang mode.";}}s:19:"load_config_options";a:5:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"load_config_options";s:11:"description";s:24:"Load all config options.";s:5:"flags";a:0:{}}s:18:"load_value_options";a:5:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"load_value_options";s:11:"description";s:23:"Load all value options.";s:5:"flags";a:0:{}}s:10:"get_option";a:6:{s:8:"filename";s:18:"sources/config.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:7:"ID_TEXT";s:11:"description";s:22:"The name of the option";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:10:"missing_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:50:"Where to accept a missing option (and return null)";s:11:"phpdoc_name";s:10:"missing_ok";}}s:4:"name";s:10:"get_option";s:11:"description";s:53:"Find the value of the specified configuration option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:77:"The value (null: either null value, or no option found while $missing_ok set)";}}s:9:"get_value";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;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:54:"Value to return if value not found (null: return null)";s:11:"phpdoc_name";s:7:"default";}i:2;a:7:{s:4:"name";s:19:"elective_or_lengthy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:342:"Whether this value is an elective/lengthy one. Use this for getting & setting if you don't want it to be loaded up in advance for every page view (in bulk alongside other values), or if the value may be more than 255 characters. Performance tradeoff: frequently used values should not be elective, infrequently used values should be elective.";s:11:"phpdoc_name";s:19:"elective_or_lengthy";}i:3;a:7:{s:4:"name";s:8:"env_also";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:102:"Whether to also check server environmental variables. Only use if $elective_or_lengthy is set to false";s:11:"phpdoc_name";s:8:"env_also";}}s:4:"name";s:9:"get_value";s:11:"description";s:54:"Find a specified value. Values are set with set_value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:53:"The value (null: value not found and default is null)";}}s:20:"get_value_newer_than";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:61:"The cutoff time (an absolute time, not a relative "time ago")";s:11:"phpdoc_name";s:6:"cutoff";}i:2;a:7:{s:4:"name";s:19:"elective_or_lengthy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:342:"Whether this value is an elective/lengthy one. Use this for getting & setting if you don't want it to be loaded up in advance for every page view (in bulk alongside other values), or if the value may be more than 255 characters. Performance tradeoff: frequently used values should not be elective, infrequently used values should be elective.";s:11:"phpdoc_name";s:19:"elective_or_lengthy";}}s:4:"name";s:20:"get_value_newer_than";s:11:"description";s:79:"Find the specified configuration option if it is younger than a specified time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:44:"The value (null: value newer than not found)";}}s:9:"set_value";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:24:"The value (null: delete)";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:19:"elective_or_lengthy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:342:"Whether this value is an elective/lengthy one. Use this for getting & setting if you don't want it to be loaded up in advance for every page view (in bulk alongside other values), or if the value may be more than 255 characters. Performance tradeoff: frequently used values should not be elective, infrequently used values should be elective.";s:11:"phpdoc_name";s:19:"elective_or_lengthy";}}s:4:"name";s:9:"set_value";s:11:"description";s:59:"Set the specified situational value to the specified value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:104:"The value just set, same as $value (just as a niceity so that Commandr users can see something "happen")";}}s:12:"delete_value";a:5:{s:8:"filename";s:18:"sources/config.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:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:19:"elective_or_lengthy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:342:"Whether this value is an elective/lengthy one. Use this for getting & setting if you don't want it to be loaded up in advance for every page view (in bulk alongside other values), or if the value may be more than 255 characters. Performance tradeoff: frequently used values should not be elective, infrequently used values should be elective.";s:11:"phpdoc_name";s:19:"elective_or_lengthy";}}s:4:"name";s:12:"delete_value";s:11:"description";s:27:"Delete a situational value.";s:5:"flags";a:0:{}}s:13:"delete_values";a:5:{s:8:"filename";s:18:"sources/config.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:27:"List of names of the values";s:11:"phpdoc_name";s:6:"values";}}s:4:"name";s:13:"delete_values";s:11:"description";s:26:"Delete situational values.";s:5:"flags";a:0:{}}s:11:"update_stat";a:5:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"stat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The codename for the stat";s:11:"phpdoc_name";s:4:"stat";}i:1;a:5:{s:4:"name";s:9:"increment";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"What to increment the statistic by";s:11:"phpdoc_name";s:9:"increment";}}s:4:"name";s:11:"update_stat";s:11:"description";s:62:"Increment the specified stored value, by the specified amount.";s:5:"flags";a:0:{}}s:12:"invert_value";a:6:{s:8:"filename";s:18:"sources/config.php";s:10:"parameters";a:1:{i:0;a:6:{s:4:"name";s:3:"old";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The old value";s:11:"phpdoc_name";s:3:"old";s:3:"set";s:3:"0 1";}}s:4:"name";s:12:"invert_value";s:11:"description";s:301:"Very simple function to invert the meaning of an old hidden option. We often use this when we've promoted a hidden option into a new proper option but inverted the meaning in the process - we use this in the default value generation code, as an in-line aid to preserve existing hidden option settings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The inverted value";}}s:11:"_multi_lang";a:6:{s:8:"filename";s:19:"sources/config2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_multi_lang";s:11:"description";s:199:"An option has dissappeared somehow - find it via searching our code-base for it's install code. It doesn't get returned, just loaded up. This function will produce a fatal error if we cannot find it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether to run in multi-lang mode.";}}s:18:"get_default_option";a:6:{s:8:"filename";s:19:"sources/config2.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:7:"ID_TEXT";s:11:"description";s:22:"The name of the option";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:18:"get_default_option";s:11:"description";s:41:"Get the default value of a config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:26:"The value (null: disabled)";}}s:10:"set_option";a:5:{s:8:"filename";s:19:"sources/config2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the value";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:20:"will_be_formally_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:34:"Whether this was a human-set value";s:11:"phpdoc_name";s:20:"will_be_formally_set";}}s:4:"name";s:10:"set_option";s:11:"description";s:188:"Set a configuration option with the specified values.Note that you may wish to also empty the template cache after running this function. Config options may have been set into template(s).";s:5:"flags";a:0:{}}s:23:"config_update_value_ref";a:5:{s:8:"filename";s:19:"sources/config2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"old_setting";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The old value";s:11:"phpdoc_name";s:11:"old_setting";}i:1;a:5:{s:4:"name";s:7:"setting";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The name value";s:11:"phpdoc_name";s:7:"setting";}i:2;a:5:{s:4:"name";s:4:"type";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:4:"name";s:23:"config_update_value_ref";s:11:"description";s:45:"Update a reference stored in a config option.";s:5:"flags";a:0:{}}s:17:"config_option_url";a:6:{s:8:"filename";s:19:"sources/config2.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:7:"ID_TEXT";s:11:"description";s:22:"The config option name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:17:"config_option_url";s:11:"description";s:45:"Update a reference stored in a config option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:58:"URL to set the config option (null: no such option exists)";}}s:20:"delete_config_option";a:5:{s:8:"filename";s:19:"sources/config2.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:7:"ID_TEXT";s:11:"description";s:33:"The codename of the config option";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:20:"delete_config_option";s:11:"description";s:64:"Deletes a specified config option permanently from the database.";s:5:"flags";a:0:{}}s:20:"rename_config_option";a:5:{s:8:"filename";s:19:"sources/config2.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:12:"The old 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:12:"The new name";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:20:"rename_config_option";s:11:"description";s:23:"Rename a config option.";s:5:"flags";a:0:{}}s:23:"may_view_content_behind";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:4:{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:13:"User to check";s:11:"phpdoc_name";s:9:"member_id";}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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:7:{s:4:"name";s:8:"type_has";s:7:"default";s:12:"content_type";s:11:"default_raw";s:14:"'content_type'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Content type type";s:11:"phpdoc_name";s:8:"type_has";}}s:4:"name";s:23:"may_view_content_behind";s:11:"description";s:76:"Given a particular bit of feedback content, check if the user may access it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether there is permission";}}s:18:"get_content_object";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:1:{i:0;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";}}s:4:"name";s:18:"get_content_object";s:11:"description";s:154:"Get the CMA hook object for a content type. Also works for resource types (i.e. if it's a resource, although not actually considered content technically).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:36:"The object (null: could not get one)";}}s:26:"convert_composr_type_codes";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:3:{i:0;a:6:{s:4:"name";s:8:"type_has";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"Content type type we know";s:11:"phpdoc_name";s:8:"type_has";s:3:"set";s:206:"addon content_type meta_hook search_hook seo_type_code feedback_type_code permissions_type_code module table commandr_filesystem_hook rss_hook attachment_hook unvalidated_hook notification_hook sitemap_hook";}i:1;a:5:{s:4:"name";s:7:"type_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Content type ID we know";s:11:"phpdoc_name";s:7:"type_id";}i:2;a:6:{s:4:"name";s:11:"type_wanted";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"Desired content type";s:11:"phpdoc_name";s:11:"type_wanted";s:3:"set";s:206:"addon content_type meta_hook search_hook seo_type_code feedback_type_code permissions_type_code module table commandr_filesystem_hook rss_hook attachment_hook unvalidated_hook notification_hook sitemap_hook";}}s:4:"name";s:26:"convert_composr_type_codes";s:11:"description";s:52:"Find a different content type code from the one had.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:51:"Corrected content type type (blank: could not find)";}}s:35:"convert_composr_type_codes_multiple";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:2:{i:0;a:6:{s:4:"name";s:8:"type_has";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"Content type type we know";s:11:"phpdoc_name";s:8:"type_has";s:3:"set";s:206:"addon content_type meta_hook search_hook seo_type_code feedback_type_code permissions_type_code module table commandr_filesystem_hook rss_hook attachment_hook unvalidated_hook notification_hook sitemap_hook";}i:1;a:5:{s:4:"name";s:7:"type_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Content type ID we know";s:11:"phpdoc_name";s:7:"type_id";}}s:4:"name";s:35:"convert_composr_type_codes_multiple";s:11:"description";s:67:"Find content type info, for a particular content type type we know.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"Content type info list (blank: could not find)";}}s:19:"content_get_details";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:3:{i:0;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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:17:"resource_fs_style";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to use the content API as resource-fs requires (may be slightly different)";s:11:"phpdoc_name";s:17:"resource_fs_style";}}s:4:"name";s:19:"content_get_details";s:11:"description";s:34:"Get meta details of a content item";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:140:"Tuple: title, submitter, content hook info, the content row, URL (for use within current browser session), URL (for use in emails / sharing)";}}s:15:"content_get_row";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:1;a:5:{s:4:"name";s:8:"cma_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"The info array for the content type";s:11:"phpdoc_name";s:8:"cma_info";}}s:4:"name";s:15:"content_get_row";s:11:"description";s:38:"Get the content row of a content item.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:25:"The row (null: not found)";}}s:32:"extract_content_str_id_from_data";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"The data row";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:8:"cma_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"The info array for the content type";s:11:"phpdoc_name";s:8:"cma_info";}}s:4:"name";s:32:"extract_content_str_id_from_data";s:11:"description";s:40:"Get the string content ID for some data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"The ID";}}s:28:"get_content_where_for_str_id";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"str_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:6:"str_id";}i:1;a:5:{s:4:"name";s:8:"cma_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"The info array for the content type";s:11:"phpdoc_name";s:8:"cma_info";}i:2;a:7:{s:4:"name";s:11:"table_alias";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:28:"The table alias (null: none)";s:11:"phpdoc_name";s:11:"table_alias";}}s:4:"name";s:28:"get_content_where_for_str_id";s:11:"description";s:70:"Given the string content ID get a mapping we could use as a WHERE map.";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:"append_content_select_for_id";a:5:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:6:"select";}i:1;a:5:{s:4:"name";s:8:"cma_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"The info array for the content type";s:11:"phpdoc_name";s:8:"cma_info";}i:2;a:7:{s:4:"name";s:11:"table_alias";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:28:"The table alias (null: none)";s:11:"phpdoc_name";s:11:"table_alias";}}s:4:"name";s:28:"append_content_select_for_id";s:11:"description";s:70:"Given the string content ID get a mapping we could use as a WHERE map.";s:5:"flags";a:0:{}}s:23:"content_language_string";a:6:{s:8:"filename";s:19:"sources/content.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:65:"The language string stub (must itself be a valid language string)";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:23:"content_language_string";s:11:"description";s:124:"Get an action language string for a particular content type based on a stub.If it can't get a match it'll just use the stub.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Tempcode of language string";}}s:14:"init__content2";a:5:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__content2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"get_order_field";a:6:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:10:"entry_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"The type of resource being ordered";s:11:"phpdoc_name";s:10:"entry_type";}i:1;a:5:{s:4:"name";s:13:"category_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:72:"The type of resource being ordered within (null: no categories involved)";s:11:"phpdoc_name";s:13:"category_type";}i:2;a:5:{s:4:"name";s:13:"current_order";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:44:"The current order (null: new, so add to end)";s:11:"phpdoc_name";s:13:"current_order";}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:63:"Maximum order field (null: work out from content type metadata)";s:11:"phpdoc_name";s:3:"max";}i:4;a:7:{s:4:"name";s:5:"total";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:92:"Number of entries, alternative to supplying $max (null: work out from content type metadata)";s:11:"phpdoc_name";s:5:"total";}i:5;a:7:{s:4:"name";s:11:"order_field";s:7:"default";s:5:"order";s:11:"default_raw";s:7:"'order'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The POST field to save under";s:11:"phpdoc_name";s:11:"order_field";}i:6;a:7:{s:4:"name";s:11:"description";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:"Description for field input (null: {!ORDER})";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"get_order_field";s:11:"description";s:22:"Get an order inputter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Ordering field";}}s:22:"post_param_order_field";a:6:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:11:"order_field";s:7:"default";s:5:"order";s:11:"default_raw";s:7:"'order'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The POST field";s:11:"phpdoc_name";s:11:"order_field";}}s:4:"name";s:22:"post_param_order_field";s:11:"description";s:26:"Get submitted order value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The order value";}}s:19:"metadata_get_fields";a:6:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:5:{i:0;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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:37:"The ID of the resource (null: adding)";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:14:"allow_no_owner";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to allow owner to be left blank (meaning no owner)";s:11:"phpdoc_name";s:14:"allow_no_owner";}i:3;a:7:{s:4:"name";s:14:"fields_to_skip";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:48:"List of fields to NOT take in (null: empty list)";s:11:"phpdoc_name";s:14:"fields_to_skip";}i:4;a:7:{s:4:"name";s:11:"show_header";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:55:"Whether to show a header (a METADATA_HEADER_* constant)";s:11:"phpdoc_name";s:11:"show_header";}}s:4:"name";s:19:"metadata_get_fields";s:11:"description";s:77:"Get template fields to insert into a form page, for manipulation of metadata.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Form page Tempcode fragment";}}s:26:"actual_metadata_get_fields";a:6:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:4:{i:0;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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:41:"The old ID of the resource (null: adding)";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:14:"fields_to_skip";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:48:"List of fields to NOT take in (null: empty list)";s:11:"phpdoc_name";s:14:"fields_to_skip";}i:3;a:7:{s:4:"name";s:14:"new_content_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:52:"The new ID of the resource (null: not being renamed)";s:11:"phpdoc_name";s:14:"new_content_id";}}s:4:"name";s:26:"actual_metadata_get_fields";s:11:"description";s:30:"Get field values for metadata.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:146:"A map of standard metadata fields (name to value). If adding, this map is accurate for adding. If editing, nulls mean do-not-edit or non-editable.";}}s:15:"set_url_moniker";a:5:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:4:{i:0;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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The old ID of the resource";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:14:"fields_to_skip";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:48:"List of fields to NOT take in (null: empty list)";s:11:"phpdoc_name";s:14:"fields_to_skip";}i:3;a:7:{s:4:"name";s:14:"new_content_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:52:"The new ID of the resource (null: not being renamed)";s:11:"phpdoc_name";s:14:"new_content_id";}}s:4:"name";s:15:"set_url_moniker";s:11:"description";s:33:"Set a URL moniker for a resource.";s:5:"flags";a:0:{}}s:35:"actual_metadata_get_fields__special";a:5:{s:8:"filename";s:20:"sources/content2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"metadata";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:26:"metadata already collected";s:11:"phpdoc_name";s:8:"metadata";}i:1;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The parameter name";s:11:"phpdoc_name";s:3:"key";}i:2;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:29:"The default if it was not set";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:35:"actual_metadata_get_fields__special";s:11:"description";s:66:"Read in an additional metadata field, specific to a resource type.";s:5:"flags";a:0:{}}s:24:"get_privacy_where_clause";a:6:{s:8:"filename";s:27:"sources/content_privacy.php";s:10:"parameters";a:5:{i:0;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:1;a:5:{s:4:"name";s:11:"table_alias";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The table alias in the main query";s:11:"phpdoc_name";s:11:"table_alias";}i:2;a:7:{s:4:"name";s:17:"viewing_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:62:"Viewing member to check privacy against (null: current member)";s:11:"phpdoc_name";s:17:"viewing_member_id";}i:3;a:7:{s:4:"name";s:13:"additional_or";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:49:"Additional OR clause for letting the user through";s:11:"phpdoc_name";s:13:"additional_or";}i:4;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:96:"Member owning the content (null: do dynamically in query via content hook). Usually pass as null";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:24:"get_privacy_where_clause";s:11:"description";s:55:"Get the SQL extension clauses for implementing privacy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:115:"A tuple: extra JOIN clause, extra WHERE clause, table clause (rarely used), direct table WHERE clause (rarely used)";}}s:18:"has_privacy_access";a:6:{s:8:"filename";s:27:"sources/content_privacy.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:17:"viewing_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:62:"Viewing member to check privacy against (null: current member)";s:11:"phpdoc_name";s:17:"viewing_member_id";}}s:4:"name";s:18:"has_privacy_access";s:11:"description";s:43:"Check to see if some content may be viewed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether there is access";}}s:13:"check_privacy";a:5:{s:8:"filename";s:27:"sources/content_privacy.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:17:"viewing_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:62:"Viewing member to check privacy against (null: current member)";s:11:"phpdoc_name";s:17:"viewing_member_id";}}s:4:"name";s:13:"check_privacy";s:11:"description";s:78:"Check to see if some content may be viewed. Exit with an access denied if not.";s:5:"flags";a:0:{}}s:18:"privacy_limits_for";a:6:{s:8:"filename";s:27:"sources/content_privacy.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:10:"strict_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:88:"Whether to get a full list including friends even when there are over a thousand friends";s:11:"phpdoc_name";s:10:"strict_all";}}s:4:"name";s:18:"privacy_limits_for";s:11:"description";s:47:"Find list of members who may view some content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:61:"A list of member IDs that have access (null: no restrictions)";}}s:23:"get_privacy_form_fields";a:6:{s:8:"filename";s:28:"sources/content_privacy2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:42:"The content type (null: could be multiple)";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:7:{s:4:"name";s:10:"content_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:29:"The content ID (null: adding)";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:11:"show_header";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to show a header to separate the settings out";s:11:"phpdoc_name";s:11:"show_header";}i:3;a:7:{s:4:"name";s:6:"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:23:"Prefix for field naming";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:23:"get_privacy_form_fields";s:11:"description";s:44:"Get form fields for setting content privacy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The form fields";}}s:19:"read_privacy_fields";a:6:{s:8:"filename";s:28:"sources/content_privacy2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"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:23:"Prefix for field naming";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:19:"read_privacy_fields";s:11:"description";s:51:"Reading privacy settings from the POST environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A pair: the privacy level, the list of usernames";}}s:24:"save_privacy_form_fields";a:6:{s:8:"filename";s:28:"sources/content_privacy2.php";s:10:"parameters";a:5:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:29:"The content ID (null: adding)";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:6:{s:4:"name";s:13:"privacy_level";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The privacy level";s:11:"phpdoc_name";s:13:"privacy_level";s:3:"set";s:28:"members friends staff guests";}i:3;a:5:{s:4:"name";s:17:"additional_access";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"A list of usernames";s:11:"phpdoc_name";s:17:"additional_access";}i:4;a:7:{s:4:"name";s:12:"send_invites";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:138:"Whether to send out invite notifications (only do this is it is a new content entry, rather than something obscure, like a member's photo)";s:11:"phpdoc_name";s:12:"send_invites";}}s:4:"name";s:24:"save_privacy_form_fields";s:11:"description";s:48:"Actualise form data for setting content privacy.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether it saved something";}}s:26:"delete_privacy_form_fields";a:6:{s:8:"filename";s:28:"sources/content_privacy2.php";s:10:"parameters";a:2:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:26:"delete_privacy_form_fields";s:11:"description";s:20:"Delete privacy data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether it deleted something";}}s:20:"show_content_reviews";a:6:{s:8:"filename";s:27:"sources/content_reviews.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:8:{s:4:"name";s:12:"display_mode";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:110:"The display mode (0=show full box of review information, 1=show last reviewed time, 2=show next reviewed time)";s:11:"phpdoc_name";s:12:"display_mode";s:3:"set";s:5:"0 1 2";}}s:4:"name";s:20:"show_content_reviews";s:11:"description";s:28:"Show content review details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"Content review details to show";}}s:25:"content_review_get_fields";a:6:{s:8:"filename";s:28:"sources/content_reviews2.php";s:10:"parameters";a:3:{i:0;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:1;a:7:{s:4:"name";s:10:"content_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:36:"The content ID (null: not added yet)";s:11:"phpdoc_name";s:10:"content_id";}i:2;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:120:"The catalogue name where to grab default settings from (null: content type has no bound catalogue / try and auto-detect)";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:25:"content_review_get_fields";s:11:"description";s:58:"Get a form to control how some content should be reviewed.";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:"content_review_set";a:5:{s:8:"filename";s:28:"sources/content_reviews2.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:7:{s:4:"name";s:14:"old_content_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:44:"The old content ID (null: not being renamed)";s:11:"phpdoc_name";s:14:"old_content_id";}}s:4:"name";s:18:"content_review_set";s:11:"description";s:42:"Save the results of a content review form.";s:5:"flags";a:0:{}}s:23:"schedule_content_review";a:5:{s:8:"filename";s:28:"sources/content_reviews2.php";s:10:"parameters";a:6:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:11:"review_freq";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:64:"The review frequency in seconds (null: no repeat review pattern)";s:11:"phpdoc_name";s:11:"review_freq";}i:3;a:7:{s:4:"name";s:16:"next_review_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:62:"Manual next review time (null: work out from review frequency)";s:11:"phpdoc_name";s:16:"next_review_time";}i:4;a:8:{s:4:"name";s:11:"auto_action";s:7:"default";s:5:"leave";s:11:"default_raw";s:7:"'leave'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"Automatic action to perform upon review time";s:11:"phpdoc_name";s:11:"auto_action";s:3:"set";s:23:"leave unvalidate delete";}i:5;a:7:{s:4:"name";s:21:"display_review_status";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 to display the review status publicly";s:11:"phpdoc_name";s:21:"display_review_status";}}s:4:"name";s:23:"schedule_content_review";s:11:"description";s:46:"Schedule that some content should be reviewed.";s:5:"flags";a:0:{}}s:20:"uninstall_gps_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"uninstall_gps_fields";s:11:"description";s:43:"Remove CPF fields for GPS.Assumes Conversr.";s:5:"flags";a:0:{}}s:18:"install_gps_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"install_gps_fields";s:11:"description";s:43:"Create CPF fields for GPS.Assumes Conversr.";s:5:"flags";a:0:{}}s:21:"uninstall_name_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"uninstall_name_fields";s:11:"description";s:45:"Remove CPF fields for names.Assumes Conversr.";s:5:"flags";a:0:{}}s:19:"install_name_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"install_name_fields";s:11:"description";s:45:"Create CPF fields for names.Assumes Conversr.";s:5:"flags";a:0:{}}s:24:"uninstall_address_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"uninstall_address_fields";s:11:"description";s:47:"Remove CPF fields for address.Assumes Conversr.";s:5:"flags";a:0:{}}s:22:"install_address_fields";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"install_address_fields";s:11:"description";s:47:"Create CPF fields for address.Assumes Conversr.";s:5:"flags";a:0:{}}s:28:"uninstall_mobile_phone_field";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"uninstall_mobile_phone_field";s:11:"description";s:51:"Remove CPF field for mobile phone.Assumes Conversr.";s:5:"flags";a:0:{}}s:26:"install_mobile_phone_field";a:5:{s:8:"filename";s:23:"sources/cpf_install.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"install_mobile_phone_field";s:11:"description";s:51:"Create CPF field for mobile phone.Assumes Conversr.";s:5:"flags";a:0:{}}s:14:"critical_error";a:5:{s:8:"filename";s:27:"sources/critical_errors.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The error message code";s:11:"phpdoc_name";s:4:"code";}i:1;a:7:{s:4:"name";s:5:"relay";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:50:"Relayed additional details (null: nothing relayed)";s:11:"phpdoc_name";s:5:"relay";}i:2;a:7:{s:4:"name";s:4:"exit";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether to actually exit";s:11:"phpdoc_name";s:4:"exit";}}s:4:"name";s:14:"critical_error";s:11:"description";s:44:"Exit with a nicely formatted critical error.";s:5:"flags";a:0:{}}s:11:"init__crypt";a:5:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__crypt";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:13:"password_hash";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:3:{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:20:"The password to hash";s:11:"phpdoc_name";s:8:"password";}i:1;a:5:{s:4:"name";s:4:"algo";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:54:"The algorithm to use (Defined by PASSWORD_* constants)";s:11:"phpdoc_name";s:4:"algo";}i:2;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:36:"The options for the algorithm to use";s:11:"phpdoc_name";s:7:"options";}}s:4:"name";s:13:"password_hash";s:11:"description";s:47:"Hash the password using the specified algorithm";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:34:"The hashed password (false: error)";}}s:15:"password_verify";a:6:{s:8:"filename";s:17:"sources/crypt.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 password to verify";s:11:"phpdoc_name";s:8:"password";}i:1;a:5:{s:4:"name";s:4:"hash";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The hash to verify against";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:15:"password_verify";s:11:"description";s:73:"Verify a password against a hash using a timing attack resistant approach";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"If the password matches the hash";}}s:13:"_crypt_strlen";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"binary_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The input string";s:11:"phpdoc_name";s:13:"binary_string";}}s:4:"name";s:13:"_crypt_strlen";s:11:"description";s:297:"Count the number of bytes in a stringWe cannot simply use strlen() for this, because it might be overwritten by the mbstring extension.In this case, strlen() will count the number of *characters* based on the internal encoding. Asequence of bytes might be regarded as a single multibyte character.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of bytes";}}s:13:"_crypt_substr";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"binary_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The input string";s:11:"phpdoc_name";s:13:"binary_string";}i:1;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Start";s:11:"phpdoc_name";s:5:"start";}i:2;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Length";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:13:"_crypt_substr";s:11:"description";s:36:"Get a substring based on byte limits";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The substring";}}s:12:"ratchet_hash";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The password in plain text";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:10:"SHORT_TEXT";s:11:"description";s:8:"The salt";s:11:"phpdoc_name";s:4:"salt";}i:2;a:7:{s:4:"name";s:12:"legacy_style";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:35:"Legacy hashing style to fallback to";s:11:"phpdoc_name";s:12:"legacy_style";}}s:4:"name";s:12:"ratchet_hash";s:11:"description";s:147:"Do a hashing, with support for our "ratcheting up" algorithm (i.e. lets the admin increase the complexity over the time, as CPU speeds get faster).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The salted&hashed password";}}s:19:"ratchet_hash_verify";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The password in plain text";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:10:"SHORT_TEXT";s:11:"description";s:8:"The salt";s:11:"phpdoc_name";s:4:"salt";}i:2;a:5:{s:4:"name";s:16:"pass_hash_salted";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:152:"The prior salted&hashed password, which will also include the algorithm/ratcheting level (unless it's old style, in which case we use non-ratcheted md5)";s:11:"phpdoc_name";s:16:"pass_hash_salted";}i:3;a:7:{s:4:"name";s:12:"legacy_style";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:35:"Legacy hashing style to fallback to";s:11:"phpdoc_name";s:12:"legacy_style";}}s:4:"name";s:19:"ratchet_hash_verify";s:11:"description";s:65:"Verify a password is correct by comparison of the hashed version.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the password if verified";}}s:12:"produce_salt";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"produce_salt";s:11:"description";s:29:"Get a decent randomised salt.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The salt";}}s:13:"get_site_salt";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_site_salt";s:11:"description";s:142:"Get the site-wide salt. It should be something hard for a hacker to get, so we depend on data gathered both from the database and file-system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The salt";}}s:17:"get_rand_password";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_rand_password";s:11:"description";s:26:"Get a randomised password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The randomised password";}}s:24:"get_secure_random_number";a:6:{s:8:"filename";s:17:"sources/crypt.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_secure_random_number";s:11:"description";s:61:"Get a secure random number, the best this PHP version can do.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The randomised number";}}s:21:"check_master_password";a:6:{s:8:"filename";s:24:"sources/crypt_master.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:21:"check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:31:"check_master_password_from_hash";a:6:{s:8:"filename";s:24:"sources/crypt_master.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:21:"password_given_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"Given master password";s:11:"phpdoc_name";s:21:"password_given_hashed";}}s:4:"name";s:31:"check_master_password_from_hash";s:11:"description";s:41:"Check the given master password is valid.";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:28:"_master_password_check__init";a:5:{s:8:"filename";s:24:"sources/crypt_master.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"_master_password_check__init";s:11:"description";s:41:"Prepare for checking the master password.";s:5:"flags";a:0:{}}s:30:"_master_password_check__result";a:5:{s:8:"filename";s:24:"sources/crypt_master.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"result";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether login is successful";s:11:"phpdoc_name";s:6:"result";}}s:4:"name";s:30:"_master_password_check__result";s:11:"description";s:41:"Prepare for checking the master password.";s:5:"flags";a:0:{}}s:18:"csrf_filter_active";a:6:{s:8:"filename";s:23:"sources/csrf_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"csrf_filter_active";s:11:"description";s:57:"Whether CSRF-checks are active for the current zone/page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:19:"generate_csrf_token";a:6:{s:8:"filename";s:23:"sources/csrf_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"generate_csrf_token";s:11:"description";s:31:"Generate and save a CSRF-token.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Generated token";}}s:16:"check_csrf_token";a:5:{s:8:"filename";s:23:"sources/csrf_filter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"token";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:27:"Provided token (null: none)";s:11:"phpdoc_name";s:5:"token";}}s:4:"name";s:16:"check_csrf_token";s:11:"description";s:37:"Check a provided CSRF-token is valid.";s:5:"flags";a:0:{}}s:21:"delete_expired_tokens";a:5:{s:8:"filename";s:23:"sources/csrf_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"delete_expired_tokens";s:11:"description";s:27:"Delete expired CSRF-tokens.";s:5:"flags";a:0:{}}s:16:"init__css_and_js";a:5:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__css_and_js";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:11:"css_inherit";a:6:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"css_file";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Source CSS file";s:11:"phpdoc_name";s:8:"css_file";}i:1;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Source theme";s:11:"phpdoc_name";s:5:"theme";}i:2;a:5:{s:4:"name";s:17:"destination_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Destination theme";s:11:"phpdoc_name";s:17:"destination_theme";}i:3;a:5:{s:4:"name";s:4:"seed";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:27:"Seed (null: do not re-seed)";s:11:"phpdoc_name";s:4:"seed";}i:4;a:5:{s:4:"name";s:4:"dark";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether it is a dark theme";s:11:"phpdoc_name";s:4:"dark";}i:5;a:6:{s:4:"name";s:9:"algorithm";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The algorithm to use";s:11:"phpdoc_name";s:9:"algorithm";s:3:"set";s:13:"equations hsv";}}s:4:"name";s:11:"css_inherit";s:11:"description";s:100:"Inherit from a CSS file to create a string for a (possibly theme-gen) modified version of that file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The sheet";}}s:10:"js_compile";a:5:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:1:"j";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"Name of the JS file";s:11:"phpdoc_name";s:1:"j";}i:1;a:5:{s:4:"name";s:13:"js_cache_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:24:"Full path to the JS file";s:11:"phpdoc_name";s:13:"js_cache_path";}i:2;a:7:{s:4:"name";s:6:"minify";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to also do minification";s:11:"phpdoc_name";s:6:"minify";}}s:4:"name";s:10:"js_compile";s:11:"description";s:26:"Compile a JavaScript file.";s:5:"flags";a:0:{}}s:22:"compress_cms_stub_file";a:5:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"stub_file";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:33:"Full path to the file to compress";s:11:"phpdoc_name";s:9:"stub_file";}}s:4:"name";s:22:"compress_cms_stub_file";s:11:"description";s:45:"Compress a file, and save with a stem of .gz.";s:5:"flags";a:0:{}}s:11:"css_compile";a:5:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:12:"active_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The theme the file is being loaded for";s:11:"phpdoc_name";s:12:"active_theme";}i:1;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The theme the file is in";s:11:"phpdoc_name";s:5:"theme";}i:2;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"Name of the CSS file";s:11:"phpdoc_name";s:1:"c";}i:3;a:5:{s:4:"name";s:9:"full_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:25:"Full path to the CSS file";s:11:"phpdoc_name";s:9:"full_path";}i:4;a:5:{s:4:"name";s:14:"css_cache_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:46:"Full path to where the cached CSS file will go";s:11:"phpdoc_name";s:14:"css_cache_path";}i:5;a:7:{s:4:"name";s:6:"minify";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to also do minification";s:11:"phpdoc_name";s:6:"minify";}}s:4:"name";s:11:"css_compile";s:11:"description";s:19:"Compile a CSS file.";s:5:"flags";a:0:{}}s:16:"_css_cms_include";a:6:{s:8:"filename";s:22:"sources/css_and_js.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:17:"Matched variables";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:16:"_css_cms_include";s:11:"description";s:52:"preg_replace callback, to handle CSS file inclusion.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:53:"A pair: success status, The text of the compiled file";}}s:12:"_css_compile";a:6:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:12:"active_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The theme the file is being loaded for";s:11:"phpdoc_name";s:12:"active_theme";}i:1;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Theme name";s:11:"phpdoc_name";s:5:"theme";}i:2;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The CSS file required";s:11:"phpdoc_name";s:1:"c";}i:3;a:5:{s:4:"name";s:9:"full_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:61:"Full path to CSS file (file is in uncompiled Tempcode format)";s:11:"phpdoc_name";s:9:"full_path";}i:4;a:7:{s:4:"name";s:6:"minify";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to also do minification";s:11:"phpdoc_name";s:6:"minify";}}s:4:"name";s:12:"_css_compile";s:11:"description";s:36:"Return a specific compiled CSS file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:53:"A pair: success status, The text of the compiled file";}}s:9:"js_minify";a:6:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"js";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"JavaScript to minimise";s:11:"phpdoc_name";s:2:"js";}}s:4:"name";s:9:"js_minify";s:11:"description";s:29:"Minimise the given JavaScript";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Minimised JavaScript";}}s:10:"css_minify";a:6:{s:8:"filename";s:22:"sources/css_and_js.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"v";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"Stylesheet definitions as string";s:11:"phpdoc_name";s:1:"v";}}s:4:"name";s:10:"css_minify";s:11:"description";s:31:"Minifies stylesheet definitions";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"Minified stylesheet definitions";}}s:19:"country_to_currency";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"country";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The country code.";s:11:"phpdoc_name";s:7:"country";}}s:4:"name";s:19:"country_to_currency";s:11:"description";s:42:"Convert a country code to a currency code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The currency code.";}}s:12:"get_currency";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_currency";s:11:"description";s:50:"Find the active ISO currency for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The active currency";}}s:16:"currency_convert";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The starting amount (integer or float).";s:11:"phpdoc_name";s:6:"amount";}i:1;a:5:{s:4:"name";s:13:"from_currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The start currency code.";s:11:"phpdoc_name";s:13:"from_currency";}i:2;a:7:{s:4:"name";s:11:"to_currency";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:48:"The end currency code (null: unknown, guess it).";s:11:"phpdoc_name";s:11:"to_currency";}i:3;a:7:{s:4:"name";s:6:"string";s:7:"default";s:13:"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 as a string.";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"currency_convert";s:11:"description";s:30:"Perform a currency conversion.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:80:"The new amount as float, or if $string then as a string (null: failed to do it).";}}s:19:"get_currency_symbol";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The currency.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:19:"get_currency_symbol";s:11:"description";s:30:"Get the symbol for a currency.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:116:"A pair: The symbol, and whether the symbol is okay to use on its own (as it is the accepted default for the symbol).";}}s:16:"get_currency_map";a:6:{s:8:"filename";s:20:"sources/currency.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_currency_map";s:11:"description";s:21:"Get the currency map.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:62:"The currency map, currency code, to an array of country codes.";}}s:22:"add_custom_comcode_tag";a:6:{s:8:"filename";s:26:"sources/custom_comcode.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Tag name.";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:42:"Tag title (string, or language string ID).";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:48:"Tag description (string, or language string ID).";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:7:"replace";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:21:"Tag replacement text.";s:11:"phpdoc_name";s:7:"replace";}i:4;a:5:{s:4:"name";s:7:"example";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:12:"Tag example.";s:11:"phpdoc_name";s:7:"example";}i:5;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"Tag parameters.";s:11:"phpdoc_name";s:10:"parameters";}i:6;a:5:{s:4:"name";s:7:"enabled";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the tag is enabled.";s:11:"phpdoc_name";s:7:"enabled";}i:7;a:5:{s:4:"name";s:13:"dangerous_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:28:"Whether the tag is disabled.";s:11:"phpdoc_name";s:13:"dangerous_tag";}i:8;a:5:{s:4:"name";s:9:"block_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:31:"Whether the tag is a block tag.";s:11:"phpdoc_name";s:9:"block_tag";}i:9;a:5:{s:4:"name";s:11:"textual_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the tag is a textual tag.";s:11:"phpdoc_name";s:11:"textual_tag";}i:10;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:22:"add_custom_comcode_tag";s:11:"description";s:25:"Add a custom Comcode tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The tag name";}}s:23:"edit_custom_comcode_tag";a:6:{s:8:"filename";s:26:"sources/custom_comcode.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:7:"old_tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Current tag name.";s:11:"phpdoc_name";s:7:"old_tag";}i:1;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"New tag name.";s:11:"phpdoc_name";s:3:"tag";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:42:"Tag title (string, or language string ID).";s:11:"phpdoc_name";s:5:"title";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:48:"Tag description (string, or language string ID).";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:7:"replace";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:21:"Tag replacement text.";s:11:"phpdoc_name";s:7:"replace";}i:5;a:5:{s:4:"name";s:7:"example";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:12:"Tag example.";s:11:"phpdoc_name";s:7:"example";}i:6;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"Tag parameters.";s:11:"phpdoc_name";s:10:"parameters";}i:7;a:5:{s:4:"name";s:7:"enabled";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the tag is enabled.";s:11:"phpdoc_name";s:7:"enabled";}i:8;a:5:{s:4:"name";s:13:"dangerous_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:28:"Whether the tag is disabled.";s:11:"phpdoc_name";s:13:"dangerous_tag";}i:9;a:5:{s:4:"name";s:9:"block_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:31:"Whether the tag is a block tag.";s:11:"phpdoc_name";s:9:"block_tag";}i:10;a:5:{s:4:"name";s:11:"textual_tag";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the tag is a textual tag.";s:11:"phpdoc_name";s:11:"textual_tag";}i:11;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:23:"edit_custom_comcode_tag";s:11:"description";s:26:"Edit a custom Comcode tag.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The tag name";}}s:25:"delete_custom_comcode_tag";a:5:{s:8:"filename";s:26:"sources/custom_comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Tag name.";s:11:"phpdoc_name";s:3:"tag";}}s:4:"name";s:25:"delete_custom_comcode_tag";s:11:"description";s:28:"Delete a custom Comcode tag.";s:5:"flags";a:0:{}}s:25:"init__database__sqlserver";a:5:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"init__database__sqlserver";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"init__database__xml";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"init__database__xml";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"_get_sql_keywords";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_get_sql_keywords";s:11:"description";s:30:"Get a list of all SQL keywords";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"List of keywords";}}s:14:"init__database";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__database";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"db_map_restrict";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{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:13:"DB table row.";s:11:"phpdoc_name";s:3:"row";}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:31:"List of fields to copy through.";s:11:"phpdoc_name";s:6:"fields";}}s:4:"name";s:15:"db_map_restrict";s:11:"description";s:91:"Extract certain fields, including any Tempcode details for them, from a DB table row array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"Map of fields.";}}s:18:"multi_lang_content";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"multi_lang_content";s:11:"description";s:64:"Find whether to run in multi-lang mode for content translations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to run in multi-lang mode for content translations.";}}s:16:"_general_db_init";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_general_db_init";s:11:"description";s:45:"Called once our DB connection becomes active.";s:5:"flags";a:0:{}}s:18:"reload_lang_fields";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:4:"full";s:7:"default";s:13:"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 we need to know about non-Comcode language fields";s:11:"phpdoc_name";s:4:"full";}i:1;a:7:{s:4:"name";s:10:"only_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:47:"The only table to reload for (null: all tables)";s:11:"phpdoc_name";s:10:"only_table";}}s:4:"name";s:18:"reload_lang_fields";s:11:"description";s:41:"Reload language fields from the database.";s:5:"flags";a:0:{}}s:21:"can_arbitrary_groupby";a:6:{s:8:"filename";s:20:"sources/database.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_get_first_id";a:6:{s:8:"filename";s:20:"sources/database.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:18:"db_string_equal_to";a:6:{s:8:"filename";s:20:"sources/database.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:20:"sources/database.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:14:"db_encode_like";a:6:{s:8:"filename";s:20:"sources/database.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:16:"db_has_full_text";a:6:{s:8:"filename";s:20:"sources/database.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:20:"sources/database.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:17:"db_has_subqueries";a:6:{s:8:"filename";s:20:"sources/database.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:26:"db_has_expression_ordering";a:6:{s:8:"filename";s:20:"sources/database.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:21:"db_uses_offset_syntax";a:6:{s:8:"filename";s:20:"sources/database.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:21:"db_uses_offset_syntax";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_escape_string";a:6:{s:8:"filename";s:20:"sources/database.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:7:"db_cast";a:6:{s:8:"filename";s:20:"sources/database.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:11:"get_db_type";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_db_type";s:11:"description";s:61:"Get the type of database installed, such as MySQL, or Oracle.";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:18:"get_use_persistent";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_use_persistent";s:11:"description";s:73:"Find Composr was installed to use persistent database connections or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether to use persistent database connections";}}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:335:"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_'. Note that anything that might write to an arbitrary db, must ask that db for it's table prefix (if it needs it of course... the db abstracts away most needs for it)";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:16:"get_db_site_host";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_db_site_host";s:11:"description";s:56:"Get the host of the database ('localhost', for example).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The database host";}}s:11:"get_db_site";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_db_site";s:11:"description";s:29:"Get the name of the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The database site";}}s:16:"get_db_site_user";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_db_site_user";s:11:"description";s:26:"Get the database username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The database username";}}s:20:"get_db_site_password";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_db_site_password";s:11:"description";s:26:"Get the database password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The database password";}}s:18:"get_db_forums_host";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_db_forums_host";s:11:"description";s:62:"Get the host of the forum database ('localhost', for example).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The database host";}}s:13:"get_db_forums";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_db_forums";s:11:"description";s:35:"Get the name of the forum database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The forum database site";}}s:18:"get_db_forums_user";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_db_forums_user";s:11:"description";s:32:"Get the forum database username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:27:"The forum database username";}}s:22:"get_db_forums_password";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_db_forums_password";s:11:"description";s:32:"Get the forum database password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:27:"The forum database password";}}s:24:"is_on_multi_site_network";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:2:"db";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:76:"The DB connection to check against (null: site's main active forum database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:24:"is_on_multi_site_network";s:11:"description";s:44:"Find whether we are on a multi-site-network.";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:11:"is_forum_db";a:6:{s:8:"filename";s:20:"sources/database.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:6:"object";s:11:"description";s:34:"The DB connection to check against";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:11:"is_forum_db";s:11:"description";s:60:"Find whether a database connection is to the forum database.";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:15:"get_db_keywords";a:6:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_db_keywords";s:11:"description";s:71:"Returns a list of keywords for all databases we might some day support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of pairs";}}s:21:"get_false_permissions";a:6:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"get_false_permissions";s:11:"description";s:92:"Returns a list of pairs, for which permissions are false by default for ordinary usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of pairs";}}s:20:"get_true_permissions";a:6:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_true_permissions";s:11:"description";s:91:"Returns a list of pairs, for which permissions are true by default for ordinary usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of pairs";}}s:16:"privilege_exists";a:6:{s:8:"filename";s:27:"sources/database_action.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:7:"ID_TEXT";s:11:"description";s:22:"The name of the option";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:16:"privilege_exists";s:11:"description";s:28:"Check if a privilege 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:13:"add_privilege";a:5:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"section";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The section the privilege is filled under";s:11:"phpdoc_name";s:7:"section";}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:30:"The codename for the privilege";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"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 this permission is granted to all usergroups by default";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:13:"not_even_mods";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether this permission is not granted to supermoderators by default (something very sensitive)";s:11:"phpdoc_name";s:13:"not_even_mods";}}s:4:"name";s:13:"add_privilege";s:11:"description";s:49:"Add a privilege, and apply it to every usergroup.";s:5:"flags";a:0:{}}s:13:"set_privilege";a:5:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:39:"The usergroup having the permission set";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:5:{s:4:"name";s:10:"permission";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The codename of the permission";s:11:"phpdoc_name";s:10:"permission";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the usergroup has the permission";s:11:"phpdoc_name";s:5:"value";}i:3;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:4;a:7:{s:4:"name";s:13:"category_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:58:"The category-type for the permission (null: none required)";s:11:"phpdoc_name";s:13:"category_type";}i:5;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:8:"?ID_TEXT";s:11:"description";s:64:"The category-name/value for the permission (null: none required)";s:11:"phpdoc_name";s:13:"category_name";}}s:4:"name";s:13:"set_privilege";s:11:"description";s:33:"Sets the privilege of a usergroup";s:5:"flags";a:0:{}}s:16:"rename_privilege";a:5:{s:8:"filename";s:27:"sources/database_action.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:12:"The old 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:12:"The new name";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:16:"rename_privilege";s:11:"description";s:19:"Rename a privilege.";s:5:"flags";a:0:{}}s:16:"delete_privilege";a:5:{s:8:"filename";s:27:"sources/database_action.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:7:"ID_TEXT";s:11:"description";s:30:"The codename of the permission";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:16:"delete_privilege";s:11:"description";s:19:"Delete a privilege.";s:5:"flags";a:0:{}}s:18:"delete_attachments";a:5:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:2:{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:8:"The hook";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:18:"delete_attachments";s:11:"description";s:53:"Delete attachments solely used by the specified hook.";s:5:"flags";a:0:{}}s:16:"mass_delete_lang";a:5:{s:8:"filename";s:27:"sources/database_action.php";s:10:"parameters";a:3:{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:9:"The table";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:5:"attrs";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The attributes";s:11:"phpdoc_name";s:5:"attrs";}i:2;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:7:"?object";s:11:"description";s:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:16:"mass_delete_lang";s:11:"description";s:103:"Deletes all language strings linked to by the specified table and attribute identifiers, if they exist.";s:5:"flags";a:0:{}}s:21:"init__database_helper";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"init__database_helper";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:12:"_check_sizes";a:6:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:8:{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:11:"primary_key";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether this will be in a primary key";s:11:"phpdoc_name";s:11:"primary_key";}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:103:"The fields (a map between field name and field type [field type must start '*' if it is to be counted])";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:7:"id_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:77:"The name of what we are checking (only used to generate clear error messages)";s:11:"phpdoc_name";s:7:"id_name";}i:4;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:5;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:6;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";}i:7;a:7:{s:4:"name";s:15:"return_on_error";s:7:"default";s:13:"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 return on errors";s:11:"phpdoc_name";s:15:"return_on_error";}}s:4:"name";s:12:"_check_sizes";s:11:"description";s:56:"Check a set of fields aren't going to exceed key limits.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the size limit is not exceeded";}}s:20:"_helper_create_table";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_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: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:4;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:5;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:20:"_helper_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:20:"_helper_create_index";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;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:3;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: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:20:"_helper_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:30:"_helper_delete_index_if_exists";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;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:30:"_helper_delete_index_if_exists";s:11:"description";s:29:"Delete an index from a table.";s:5:"flags";a:0:{}}s:28:"_helper_drop_table_if_exists";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:28:"_helper_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:20:"_helper_rename_table";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:2;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:20:"_helper_rename_table";s:11:"description";s:23:"Rename the given table.";s:5:"flags";a:0:{}}s:23:"_helper_add_table_field";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:23:"_helper_add_table_field";s:11:"description";s:34:"Adds a field to an existing table.";s:5:"flags";a:0:{}}s:27:"_helper_add_table_field_sql";a:6:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:36:"The default value (null: no default)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:27:"_helper_add_table_field_sql";s:11:"description";s:40:"SQL to add a field to an existing table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"A pair: SQL, default value for fields";}}s:25:"_helper_alter_table_field";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:25:"_helper_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:29:"_helper_alter_table_field_sql";a:6:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:29:"_helper_alter_table_field_sql";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:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:3:"SQL";}}s:26:"_helper_change_primary_key";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:2;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:26:"_helper_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:20:"_helper_add_auto_key";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;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:22:"Field name for new key";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"_helper_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:37:"_helper_promote_text_field_to_comcode";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:3;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:4;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:5;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:37:"_helper_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:26:"_helper_delete_table_field";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}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:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}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:14:"The field name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:26:"_helper_delete_table_field";s:11:"description";s:52:"Delete the specified field from the specified table.";s:5:"flags";a:0:{}}s:32:"_helper_refresh_field_definition";a:5:{s:8:"filename";s:27:"sources/database_helper.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"this_ref";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"Link to the real database object";s:11:"phpdoc_name";s:8:"this_ref";}i:1;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:32:"_helper_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:"rebuild_indices";a:5:{s:8:"filename";s:36:"sources/database_multi_lang_conv.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"only_trans";s:7:"default";s:13:"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 to only rebuild translatable field indexes";s:11:"phpdoc_name";s:10:"only_trans";}}s:4:"name";s:15:"rebuild_indices";s:11:"description";s:66:"Rebuild database indices, using correct rules for new field types.";s:5:"flags";a:0:{}}s:27:"disable_content_translation";a:5:{s:8:"filename";s:36:"sources/database_multi_lang_conv.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"disable_content_translation";s:11:"description";s:28:"Disable content translation.";s:5:"flags";a:0:{}}s:26:"enable_content_translation";a:5:{s:8:"filename";s:36:"sources/database_multi_lang_conv.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"enable_content_translation";s:11:"description";s:27:"Enable content translation.";s:5:"flags";a:0:{}}s:43:"_update_base_config_for_content_translation";a:5:{s:8:"filename";s:36:"sources/database_multi_lang_conv.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"new_setting";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"New setting value (i.e. on or off)";s:11:"phpdoc_name";s:11:"new_setting";}}s:4:"name";s:43:"_update_base_config_for_content_translation";s:11:"description";s:53:"Change content translation setting in th config file.";s:5:"flags";a:0:{}}s:24:"init__database_relations";a:5:{s:8:"filename";s:30:"sources/database_relations.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"init__database_relations";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"get_table_purpose_flags";a:6:{s:8:"filename";s:30:"sources/database_relations.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_table_purpose_flags";s:11:"description";s:144:"Find how tables might be ignored for backups etc.This is mainly used for building unit tests that make sure things are consistently implemented.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"List of tables and their status regarding being ignored for backups etc";}}s:22:"table_has_purpose_flag";a:6:{s:8:"filename";s:30:"sources/database_relations.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: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:4:"flag";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"A particular flag(s)";s:11:"phpdoc_name";s:4:"flag";}}s:4:"name";s:22:"table_has_purpose_flag";s:11:"description";s:64:"Find if a table must be ignored for backups or whatever flag(s).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the flag(s) exists (at least one)";}}s:22:"get_table_descriptions";a:6:{s:8:"filename";s:30:"sources/database_relations.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_table_descriptions";s:11:"description";s:32:"Get a map of table descriptions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:25:"Map of table descriptions";}}s:26:"get_relation_map_for_table";a:6:{s:8:"filename";s:30:"sources/database_relations.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:6:"string";s:11:"description";s:18:"A particular table";s:11:"phpdoc_name";s:5:"table";}}s:4:"name";s:26:"get_relation_map_for_table";s:11:"description";s:35:"Get a map of foreign key relations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"Map of foreign key relations";}}s:16:"get_relation_map";a:6:{s:8:"filename";s:30:"sources/database_relations.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_relation_map";s:11:"description";s:35:"Get a map of foreign key relations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"Map of foreign key relations";}}s:21:"init__database_search";a:5:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"init__database_search";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"get_stopwords_list";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_stopwords_list";s:11:"description";s:30:"Get a list of MySQL stopwords.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:54:"List of stopwords (actually a map of stopword to true)";}}s:21:"generate_text_summary";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"_temp_summary";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"What was searched";s:11:"phpdoc_name";s:13:"_temp_summary";}i:1;a:5:{s:4:"name";s:14:"words_searched";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:22:"List of words searched";s:11:"phpdoc_name";s:14:"words_searched";}}s:4:"name";s:21:"generate_text_summary";s:11:"description";s:62:"Highlight keywords in an extracted portion of a piece of text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"Highlighted portion";}}s:17:"opensearch_script";a:5:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"opensearch_script";s:11:"description";s:27:"Server opensearch requests.";s:5:"flags";a:0:{}}s:30:"build_search_submitter_clauses";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:17:"member_field_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:69:"The field name for member IDs (null: Cannot match against member IDs)";s:11:"phpdoc_name";s:17:"member_field_name";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:43:"Member ID (null: Unknown, so cannot search)";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"Author";s:11:"phpdoc_name";s:6:"author";}i:3;a:7:{s:4:"name";s:17:"author_field_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:66:"The field name for authors (null: Cannot match against member IDs)";s:11:"phpdoc_name";s:17:"author_field_name";}}s:4:"name";s:30:"build_search_submitter_clauses";s:11:"description";s:100:"Build up a submitter search clause, taking into account members, authors, usernames, and usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"An SQL fragment (null: block query)";}}s:15:"exact_match_sql";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}i:2;a:8:{s:4:"name";s:4:"type";s:7:"default";s:5:"short";s:11:"default_raw";s:7:"'short'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Table type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:10:"short long";}i:3;a:7:{s:4:"name";s:5:"param";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:43:"Search term (null: lookup from environment)";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"exact_match_sql";s:11:"description";s:96:"Get special SQL from POSTed parameters for a catalogue search field that is to be exact-matched.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:18:"nl_delim_match_sql";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The field details";s:11:"phpdoc_name";s:5:"field";}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:32:"We're processing for the ith row";s:11:"phpdoc_name";s:1:"i";}i:2;a:8:{s:4:"name";s:4:"type";s:7:"default";s:5:"short";s:11:"default_raw";s:7:"'short'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Table type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:10:"short long";}i:3;a:7:{s:4:"name";s:5:"param";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:43:"Search term (null: lookup from environment)";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"nl_delim_match_sql";s:11:"description";s:120:"Get special SQL from POSTed parameters for a catalogue search field for a multi-input field that is to be exact-matched.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:259:"Tuple of SQL details (array: extra trans fields to search, array: extra plain fields to search, string: an extra table segment for a join, string: the name of the field to use as a title, if this is the title, extra WHERE clause stuff) (null: nothing special)";}}s:15:"get_search_rows";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:20:{i:0;a:5:{s:4:"name";s:9:"meta_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:68:"The META type used by our content (null: Cannot support META search)";s:11:"phpdoc_name";s:9:"meta_type";}i:1;a:5:{s:4:"name";s:13:"meta_id_field";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:95:"The name of the field that retrieved META IDs will relate to (null: Cannot support META search)";s:11:"phpdoc_name";s:13:"meta_id_field";}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:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:3;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to do a boolean search.";s:11:"phpdoc_name";s:14:"boolean_search";}i:4;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Boolean operator";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"OR AND";}i:5;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:6;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:7;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:8;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:9;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 to only search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:10;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:11;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:183:"The translateable fields to search over (or an ! which is skipped). The first of these must be the title field or an '!'; if it is '!' then the title field will be the first raw-field";s:11:"phpdoc_name";s:6:"fields";}i:12;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The WHERE clause";s:11:"phpdoc_name";s:12:"where_clause";}i:13;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:153:"The WHERE clause that applies specifically for content (this will be duplicated to check against multiple fields). ? refers to the yet-unknown field name";s:11:"phpdoc_name";s:13:"content_where";}i:14;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"What to order by";s:11:"phpdoc_name";s:5:"order";}i:15;a:7:{s:4:"name";s:6:"select";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:14:"What to select";s:11:"phpdoc_name";s:6:"select";}i:16;a:7:{s:4:"name";s:10:"raw_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:66:"The non-translateable fields to search over (null: there are none)";s:11:"phpdoc_name";s:10:"raw_fields";}i:17;a:7:{s:4:"name";s:18:"permissions_module";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:63:"The permission module to check category access for (null: none)";s:11:"phpdoc_name";s:18:"permissions_module";}i:18;a:7:{s:4:"name";s:17:"permissions_field";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:85:"The field that specifies the permissions ID to check category access for (null: none)";s:11:"phpdoc_name";s:17:"permissions_field";}i:19;a:7:{s:4:"name";s:27:"permissions_field_is_string";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the permissions field is a string";s:11:"phpdoc_name";s:27:"permissions_field_is_string";}}s:4:"name";s:15:"get_search_rows";s:11:"description";s:76:"Get some rows, queried from the database according to the search parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"The rows found";}}s:23:"_boolean_search_prepare";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"search_filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The search string";s:11:"phpdoc_name";s:13:"search_filter";}}s:4:"name";s:23:"_boolean_search_prepare";s:11:"description";s:64:"Take a search string and find boolean search parameters from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:105:"Words to search under the boolean operator, words that must be included, words that must not be included.";}}s:22:"in_memory_search_match";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:124:"A map of POST data in search-form style. May contain 'only_titles', 'content' (the critical one!) and 'conjunctive_operator'";s:11:"phpdoc_name";s:6:"filter";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The title to try and match";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:4:"post";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:"The post to try and match (null: not used)";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:22:"in_memory_search_match";s:11:"description";s:65:"Perform a database-style in-memory boolean search on single item.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether we have a match";}}s:19:"build_content_where";a:6:{s:8:"filename";s:27:"sources/database_search.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:6:"string";s:11:"description";s:18:"The search content";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether it's a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}i:2;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:24:"Boolean operation to use";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"AND OR";}i:3;a:7:{s:4:"name";s:13:"full_coverage";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether we can assume we require full coverage (i.e. not substring matches)";s:11:"phpdoc_name";s:13:"full_coverage";}}s:4:"name";s:19:"build_content_where";s:11:"description";s:55:"Build a fulltext query WHERE clause from given content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:170:"A tuple (any SQL component may be blank): The combined where clause SQL, the boolean operator, body where clause SQL, positive where clause SQL, negative where clause SQL";}}s:16:"db_like_assemble";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:3:{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:21:"Boolean search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:8:{s:4:"name";s:16:"boolean_operator";s:7:"default";s:3:"AND";s:11:"default_raw";s:5:"'AND'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Boolean operator to use";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"AND OR";}i:2;a:7:{s:4:"name";s:13:"full_coverage";s:7:"default";s:13:"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:"Whether we can assume we require full coverage";s:11:"phpdoc_name";s:13:"full_coverage";}}s:4:"name";s:16:"db_like_assemble";s:11:"description";s:34:"Generate SQL for a boolean search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:170:"A tuple (any SQL component may be blank): The combined where clause SQL, the boolean operator, body where clause SQL, positive where clause SQL, negative where clause SQL";}}s:19:"sort_search_results";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"hook_results";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:59:"Search results from the search hook, assumed already sorted";s:11:"phpdoc_name";s:12:"hook_results";}i:1;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:51:"Existing array of results (originally starts blank)";s:11:"phpdoc_name";s:7:"results";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Sort direction";s:11:"phpdoc_name";s:9:"direction";}}s:4:"name";s:19:"sort_search_results";s:11:"description";s:51:"Sort search results as returned by the search hook.";s:5:"flags";a:0:{}s:6:"return";a:3:{s:4:"type";s:5:"array";s:11:"description";s:14:"Sorted results";s:3:"set";s:8:"ASC DESC";}}s:30:"build_search_results_interface";a:6:{s:8:"filename";s:27:"sources/database_search.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Search results";s:11:"phpdoc_name";s:7:"results";}i:1;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Start index";s:11:"phpdoc_name";s:5:"start";}i:2;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Maximum index";s:11:"phpdoc_name";s:3:"max";}i:3;a:6:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Sort direction";s:11:"phpdoc_name";s:9:"direction";s:3:"set";s:8:"ASC DESC";}i:4;a:7:{s:4:"name";s:14:"general_search";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:103:"Whether this is a general search, rather than a search for a specific result-type (such as all members)";s:11:"phpdoc_name";s:14:"general_search";}}s:4:"name";s:30:"build_search_results_interface";s:11:"description";s:64:"Build a templated list of the given search results, for viewing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"Interface";}}s:30:"init__database_security_filter";a:5:{s:8:"filename";s:36:"sources/database_security_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"init__database_security_filter";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"is_simple_query";a:6:{s:8:"filename";s:36:"sources/database_security_filter.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:9:"The query";s:11:"phpdoc_name";s:5:"query";}}s:4:"name";s:15:"is_simple_query";s:11:"description";s:53:"Find if a query is a simple one involving 'AND' maps.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:20:"Whether it is simple";}}s:23:"has_escaped_dynamic_sql";a:6:{s:8:"filename";s:36:"sources/database_security_filter.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:9:"The query";s:11:"phpdoc_name";s:5:"query";}}s:4:"name";s:23:"has_escaped_dynamic_sql";s:11:"description";s:92:"Check all strings within a query were properly escaped (by checking log of what we escaped).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether it is all good";}}s:22:"_get_quoted_substrings";a:6:{s:8:"filename";s:36:"sources/database_security_filter.php";s:10:"parameters";a:2:{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:9:"The query";s:11:"phpdoc_name";s:6:"string";}i:1;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:40:"Whether to recurse (for double escaping)";s:11:"phpdoc_name";s:7:"recurse";}}s:4:"name";s:22:"_get_quoted_substrings";s:11:"description";s:42:"Find the quoted substrings within a query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"List of substrings";}}s:23:"_trim_quoted_substrings";a:6:{s:8:"filename";s:36:"sources/database_security_filter.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:12:"Input string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:23:"_trim_quoted_substrings";s:11:"description";s:102:"Blank out substrings within a query, which makes it easier to analyse (no need to consider escapings).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Simplified substring";}}s:10:"deep_clean";a:6:{s:8:"filename";s:22:"sources/deep_clean.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"d";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Input";s:11:"phpdoc_name";s:1:"d";}i:1;a:7:{s:4:"name";s:7:"heading";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:58:"Heading to not allow to be repeated at start (blank: none)";s:11:"phpdoc_name";s:7:"heading";}}s:4:"name";s:10:"deep_clean";s:11:"description";s:67:"Clean common ugliness from some text. E.g. copy and paste problems.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Output";}}s:14:"column_cleanup";a:5:{s:8:"filename";s:22:"sources/deep_clean.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:14:"Comcode / HTML";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:14:"column_cleanup";s:11:"description";s:72:"Remove forced columnisation (word-wrapping). Useful if pasted from PDFs.";s:5:"flags";a:0:{}}s:21:"init__developer_tools";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"init__developer_tools";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:21:"semi_dev_mode_startup";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"semi_dev_mode_startup";s:11:"description";s:59:"Run some routines needed for semi-dev-mode, during startup.";s:5:"flags";a:0:{}}s:19:"dev_mode_aftertests";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"dev_mode_aftertests";s:11:"description";s:68:"Run after-tests for dev mode, to make sure coding standards are met.";s:5:"flags";a:0:{}}s:11:"destrictify";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:19:"change_content_type";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether to also set the content type to plain-HTML";s:11:"phpdoc_name";s:19:"change_content_type";}i:1;a:7:{s:4:"name";s:9:"mysql_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:70:"Whether to destrictify MySQL commands over the Composr database driver";s:11:"phpdoc_name";s:9:"mysql_too";}}s:4:"name";s:11:"destrictify";s:11:"description";s:69:"Remove Composr's strictness, to help integration of third-party code.";s:5:"flags";a:0:{}}s:11:"restrictify";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"restrictify";s:11:"description";s:120:"Add Composr's strictness, after finishing with third-party code. To be run optionally at some point after destrictify().";s:5:"flags";a:0:{}}s:7:"inspect";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"inspect";s:11:"description";s:151:"Output whatever arguments are given for debugging. If possible it'll output with plain text, but if output has already started it will attach messages.";s:5:"flags";a:0:{}}s:13:"inspect_plain";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"inspect_plain";s:11:"description";s:168:"Output whatever arguments are given for debugging as text and exit. If possible it'll output with plain text, but if output has already started it will attach messages.";s:5:"flags";a:0:{}}s:8:"_inspect";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"args";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Arguments to output";s:11:"phpdoc_name";s:4:"args";}i:1;a:7:{s:4:"name";s:11:"force_plain";s:7:"default";s:13:"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 force text output";s:11:"phpdoc_name";s:11:"force_plain";}}s:4:"name";s:8:"_inspect";s:11:"description";s:151:"Output whatever arguments are given for debugging. If possible it'll output with plain text, but if output has already started it will attach messages.";s:5:"flags";a:0:{}}s:18:"memory_trace_point";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:4:"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:57:"The name of the memory point (null: use a simple counter)";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:18:"memory_trace_point";s:11:"description";s:38:"Record the memory usage at this point.";s:5:"flags";a:0:{}}s:18:"show_memory_points";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"show_memory_points";s:11:"description";s:46:"Output whatever memory points we collected up.";s:5:"flags";a:0:{}}s:28:"cms_verify_parameters_phpdoc";a:5:{s:8:"filename";s:27:"sources/developer_tools.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"dev_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 to only run the checks in dev-mode";s:11:"phpdoc_name";s:8:"dev_only";}}s:4:"name";s:28:"cms_verify_parameters_phpdoc";s:11:"description";s:309:"Verify the parameters passed into the *calling* function match the phpdoc specification for that function.Useful when testing robustness of APIs where the CQC and ocProducts PHP are not suitable.For example, when web APIs are plumbed into Composr APIs and you need to ensure the types are coming in correctly.";s:5:"flags";a:0:{}}s:15:"init__downloads";a:5:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__downloads";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"download_licence_script";a:5:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"download_licence_script";s:11:"description";s:35:"Show a download licence for display";s:5:"flags";a:0:{}}s:19:"render_download_box";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:8:{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:39:"The database field row of this download";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:3:"pic";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether to show a picture";s:11:"phpdoc_name";s:3:"pic";}i:2;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to show breadcrumbs";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:3;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:62:"The zone the download module we're using is in (null: find it)";s:11:"phpdoc_name";s:4:"zone";}i:4;a:7:{s:4:"name";s:12:"text_summary";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:97:"Text summary for result (e.g. highlighted portion of actual file from search result) (null: none)";s:11:"phpdoc_name";s:12:"text_summary";}i:5;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:6;a:7:{s:4:"name";s:4:"root";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:46:"The virtual root (null: read from environment)";s:11:"phpdoc_name";s:4:"root";}i:7;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:19:"render_download_box";s:11:"description";s:59:"Get Tempcode for a download 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:58:"A box for this download, linking to the full download page";}}s:28:"render_download_category_box";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:7:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:6;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:28:"render_download_category_box";s:11:"description";s:68:"Get Tempcode for a download category 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:36:"create_selection_list_downloads_tree";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:5:{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:10:"?AUTO_LINK";s:11:"description";s:50:"The currently selected entry (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:60:"Only show entries submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}i:2;a:7:{s:4:"name";s:4:"shun";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:"Download we do not want to show (null: none to not show)";s:11:"phpdoc_name";s:4:"shun";}i:3;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether to get a list of child categories (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:4;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:36:"create_selection_list_downloads_tree";s:11:"description";s:73:"Get a nice, formatted XHTML list of downloads, in download tree structure";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The list of entries";}}s:18:"get_downloads_tree";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:9:{i:0;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:66:"Only show images/videos submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}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:65:"The category being at the root of our recursion (null: true root)";s:11:"phpdoc_name";s:11:"category_id";}i:2;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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:3;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:8:"?ID_TEXT";s:11:"description";s:184:"The name of the $category_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:5:"title";}i:4;a:7:{s:4:"name";s:4:"shun";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:4:"shun";}i:5;a:7:{s:4:"name";s:6:"levels";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:"Download we do not want to show (null: none to not show)";s:11:"phpdoc_name";s:6:"levels";}i:6;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether to get a list of child categories (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:7;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}i:8;a:7:{s:4:"name";s:10:"tar_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:56:"Whether to only show entries that are TAR files (addons)";s:11:"phpdoc_name";s:10:"tar_filter";}}s:4:"name";s:18:"get_downloads_tree";s:11:"description";s:136:"Get a list of maps containing all the downloads, and path information, under the specified category - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:298:"A list of maps for all categories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (to the category, including the categories own title), and more. Or if $use_compound_list, the tree structure built with pairs containing the compound list in addition to the child branches";}}s:44:"create_selection_list_download_category_tree";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:4:{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:10:"?AUTO_LINK";s:11:"description";s:53:"The currently selected category (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to make the list elements store comma-separated child lists instead of IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:2;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:3;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:44:"create_selection_list_download_category_tree";s:11:"description";s:237:"Get a nice, formatted XHTML list extending from the root, and showing all subcategories, and their subcategories (ad infinitum). The tree bit is because each entry in the list is shown to include the path through the tree that gets to it";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The list of categories";}}s:26:"get_download_category_tree";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:7:{i:0;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:74:"The category being at the root of our recursion (null: true root category)";s:11:"phpdoc_name";s:11:"category_id";}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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:2;a:7:{s:4:"name";s:13:"category_info";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:194:"The category row of the $category_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs details";s:11:"phpdoc_name";s:13:"category_info";}i:3;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 collect download counts with our tree information";s:11:"phpdoc_name";s:8:"do_stats";}i:4;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether to make a compound list (a pair of a comma-separated list of children, and the child array)";s:11:"phpdoc_name";s:17:"use_compound_list";}i:5;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:6;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}}s:4:"name";s:26:"get_download_category_tree";s:11:"description";s:137:"Get a list of maps containing all the subcategories, and path information, of the specified category - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:245:"A list of maps for all subcategories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (path to the category, including the categories own title). There is also an additional 'downloadcount' entry if stats were requested";}}s:39:"create_selection_list_download_licences";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:52:"The currently selected licence (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:8:"allow_na";s:7:"default";s:13:"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 allow an N/A selection";s:11:"phpdoc_name";s:8:"allow_na";}}s:4:"name";s:39:"create_selection_list_download_licences";s:11:"description";s:61:"Get a nice, formatted XHTML list to select a download licence";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The list of categories";}}s:20:"download_breadcrumbs";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:31:"The category we are finding for";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:7:{s:4:"name";s:4:"root";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:42:"The root of the tree (null: the true root)";s:11:"phpdoc_name";s:4:"root";}i:2;a:7:{s:4:"name";s:18:"no_link_for_me_sir";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether to include category links at this level (the recursed levels will always contain links - the top level is optional, hence this parameter)";s:11:"phpdoc_name";s:18:"no_link_for_me_sir";}i:3;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:62:"The zone the download module we're using is in (null: find it)";s:11:"phpdoc_name";s:4:"zone";}i:4;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}}s:4:"name";s:20:"download_breadcrumbs";s:11:"description";s:98:"Get a formatted XHTML string of the route back to the specified root, from the specified category.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The breadcrumb segments";}}s:32:"count_download_category_children";a:6:{s:8:"filename";s:21:"sources/downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:60:"The ID of the category for which count details are collected";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:32:"count_download_category_children";s:11:"description";s:85:"Count the downloads and subcategories underneath the specified category, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:235:"The number of downloads is returned in $output['num_downloads'], and the number of subcategories is returned in $output['num_children'], and the (possibly recursive) number of downloads is returned in $output['num_downloads_children'].";}}s:18:"generate_dload_url";a:6:{s:8:"filename";s:21:"sources/downloads.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:39:"The ID of the download to be downloaded";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:11:"use_gateway";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to use the gateway script";s:11:"phpdoc_name";s:11:"use_gateway";}}s:4:"name";s:18:"generate_dload_url";s:11:"description";s:38:"Generate a link to a Composr download.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The URL";}}s:16:"init__downloads2";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__downloads2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"download_gateway_script";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"download_gateway_script";s:11:"description";s:33:"Farm out the files for downloads.";s:5:"flags";a:0:{}}s:12:"dload_script";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"dload_script";s:11:"description";s:33:"Farm out the files for downloads.";s:5:"flags";a:0:{}}s:21:"add_download_category";a:6:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:8:"category";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:1;a:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:28:"The parent download category";s:11:"phpdoc_name";s:9:"parent_id";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:13:"A description";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:49:"Hidden notes pertaining to this download category";s:11:"phpdoc_name";s:5:"notes";}i:4;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:55:"The representative image for the category (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:8:"add_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:20:"Add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:7;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:8;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:21:"add_download_category";s:11:"description";s:23:"Add a download category";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:43:"The ID of the newly added download category";}}s:22:"edit_download_category";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"The ID of the category being edited";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:5:{s:4:"name";s:8:"category";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:5:{s:4:"name";s:9:"parent_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:28:"The parent download category";s:11:"phpdoc_name";s:9:"parent_id";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:13:"A description";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:49:"Hidden notes pertaining to this download category";s:11:"phpdoc_name";s:5:"notes";}i:5;a:5:{s:4:"name";s:9:"rep_image";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:55:"The representative image for the category (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:6;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:51:"Meta keywords for this resource (null: do not edit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:7;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:54:"Meta description for this resource (null: do not edit)";s:11:"phpdoc_name";s:16:"meta_description";}i:8;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}}s:4:"name";s:22:"edit_download_category";s:11:"description";s:59:"Edit the given download category with the new details given";s:5:"flags";a:0:{}}s:24:"delete_download_category";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:31:"The download category to delete";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:24:"delete_download_category";s:11:"description";s:27:"Delete a download category.";s:5:"flags";a:0:{}}s:16:"create_data_mash";a:6:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:4:{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:66:"The URL to make a data-mash of, or a filename if $data isn't blank";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:4:"data";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:20:"Data (null: use URL)";s:11:"phpdoc_name";s:4:"data";}i:2;a:7:{s:4:"name";s:9:"extension";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:35:"File extension (null: get from URL)";s:11:"phpdoc_name";s:9:"extension";}i:3;a:7:{s:4:"name";s:11:"direct_path";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether a direct file path was given instead of a URL";s:11:"phpdoc_name";s:11:"direct_path";}}s:4:"name";s:16:"create_data_mash";s:11:"description";s:85:"Create a data-mash from the file at a URL. This is data useful for the search engine.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:13:"The data-mash";}}s:24:"_is_valid_data_mash_char";a:6:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ch";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:17:"Character to test";s:11:"phpdoc_name";s:2:"ch";}}s:4:"name";s:24:"_is_valid_data_mash_char";s:11:"description";s:57:"Find if a character is basically a part of a text string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether the character is valid";}}s:12:"add_download";a:6:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:27:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:47:"The ID of the category the download is to be in";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:5:{s:4:"name";s:4:"name";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:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"The URL to the download";s:11:"phpdoc_name";s:3:"url";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:31:"The description of the download";s:11:"phpdoc_name";s:11:"description";}i:4;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:66:"The author of the download (not necessarily same as the submitter)";s:11:"phpdoc_name";s:6:"author";}i:5;a:5:{s:4:"name";s:18:"additional_details";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:46:"The supplementary description for the download";s:11:"phpdoc_name";s:18:"additional_details";}i:6;a:5:{s:4:"name";s:11:"out_mode_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:289:"The out-mode-id (the ID of a download that this download is an old version of). Often people wonder why this is specified with the old version, and not the opposite with the new version - it is because statistically, we perceive more chance of downloads merging than splitting (null: none)";s:11:"phpdoc_name";s:11:"out_mode_id";}i:7;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the download has been validated";s:11:"phpdoc_name";s:9:"validated";}i:8;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the download may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:9;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:10;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the download may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:11;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:39:"Hidden notes pertaining to the download";s:11:"phpdoc_name";s:5:"notes";}i:12;a:5:{s:4:"name";s:17:"original_filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:59:"The downloads original filename (the URL may be obfuscated)";s:11:"phpdoc_name";s:17:"original_filename";}i:13;a:5:{s:4:"name";s:9:"file_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:88:"The file size of the download (we can't really detect this in real-time for remote URLs)";s:11:"phpdoc_name";s:9:"file_size";}i:14;a:5:{s:4:"name";s:4:"cost";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:64:"The cost of the download that members will have to pay to get it";s:11:"phpdoc_name";s:4:"cost";}i:15;a:5:{s:4:"name";s:21:"submitter_gets_points";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:188:"Whether the submitter gets the points for the download (they are selling it) (otherwise they are just thrown out, which is an alternative model - one of enforcing community point building)";s:11:"phpdoc_name";s:21:"submitter_gets_points";}i:16;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:17;a:7:{s:4:"name";s:8:"add_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:41:"The add date for the download (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:18;a:7:{s:4:"name";s:13:"num_downloads";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:50:"The number of downloads that this download has had";s:11:"phpdoc_name";s:13:"num_downloads";}i:19;a:7:{s:4:"name";s:5:"views";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:46:"The number of views that this download has had";s:11:"phpdoc_name";s:5:"views";}i:20;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:34:"The submitter (null: current user)";s:11:"phpdoc_name";s:9:"submitter";}i:21;a:7:{s:4:"name";s:9:"edit_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:27:"The edit date (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:22;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:23;a:7:{s:4:"name";s:13:"meta_keywords";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:"Meta keywords for this resource (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:24;a:7:{s:4:"name";s:16:"meta_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:52:"Meta description for this resource (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:25;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:83:"The ordered number of the gallery image to use as the download representative image";s:11:"phpdoc_name";s:11:"default_pic";}i:26;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:12:"add_download";s:11:"description";s:15:"Add a download.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the newly added download";}}s:32:"set_download_gallery_permissions";a:5:{s:8:"filename";s:22:"sources/downloads2.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:10:"?AUTO_LINK";s:11:"description";s:51:"The ID of the download (null: lookup from download)";s:11:"phpdoc_name";s:2:"id";}i:1;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 submitter (null: work out automatically)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:32:"set_download_gallery_permissions";s:11:"description";s:43:"Set the permissions for a download gallery.";s:5:"flags";a:0:{}}s:13:"edit_download";a:5:{s:8:"filename";s:22:"sources/downloads2.php";s:10:"parameters";a:28:{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:30:"The ID of the download to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:47:"The ID of the category the download is to be in";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:5:{s:4:"name";s:4:"name";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:3;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"The URL to the download";s:11:"phpdoc_name";s:3:"url";}i:4;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:31:"The description of the download";s:11:"phpdoc_name";s:11:"description";}i:5;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:66:"The author of the download (not necessarily same as the submitter)";s:11:"phpdoc_name";s:6:"author";}i:6;a:5:{s:4:"name";s:18:"additional_details";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:46:"The supplementary description for the download";s:11:"phpdoc_name";s:18:"additional_details";}i:7;a:5:{s:4:"name";s:11:"out_mode_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:289:"The out-mode-id (the ID of a download that this download is an old version of). Often people wonder why this is specified with the old version, and not the opposite with the new version - it is because statistically, we perceive more chance of downloads merging than splitting (null: none)";s:11:"phpdoc_name";s:11:"out_mode_id";}i:8;a:5:{s:4:"name";s:11:"default_pic";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:83:"The ordered number of the gallery image to use as the download representative image";s:11:"phpdoc_name";s:11:"default_pic";}i:9;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the download has been validated";s:11:"phpdoc_name";s:9:"validated";}i:10;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the download may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:11;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:12;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the download may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:13;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:39:"Hidden notes pertaining to the download";s:11:"phpdoc_name";s:5:"notes";}i:14;a:5:{s:4:"name";s:17:"original_filename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:59:"The downloads original filename (the URL may be obfuscated)";s:11:"phpdoc_name";s:17:"original_filename";}i:15;a:5:{s:4:"name";s:9:"file_size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:88:"The file size of the download (we can't really detect this in real-time for remote URLs)";s:11:"phpdoc_name";s:9:"file_size";}i:16;a:5:{s:4:"name";s:4:"cost";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:64:"The cost of the download that members will have to pay to get it";s:11:"phpdoc_name";s:4:"cost";}i:17;a:5:{s:4:"name";s:21:"submitter_gets_points";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:188:"Whether the submitter gets the points for the download (they are selling it) (otherwise they are just thrown out, which is an alternative model - one of enforcing community point building)";s:11:"phpdoc_name";s:21:"submitter_gets_points";}i:18;a:5:{s:4:"name";s:7:"licence";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:19;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:20;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:21;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:22;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:23;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:24;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:25;a:7:{s:4:"name";s:13:"num_downloads";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:72:"The number of downloads that this download has had (null: do not change)";s:11:"phpdoc_name";s:13:"num_downloads";}i:26;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}i:27;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:13:"edit_download";s:11:"description";s:16:"Edit a download.";s:5:"flags";a:0:{}}s:15:"delete_download";a:5:{s:8:"filename";s:22:"sources/downloads2.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:32:"The ID of the download to delete";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"leave";s:7:"default";s:13:"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 leave the actual file behind";s:11:"phpdoc_name";s:5:"leave";}}s:4:"name";s:15:"delete_download";s:11:"description";s:18:"Delete a download.";s:5:"flags";a:0:{}}s:20:"add_download_licence";a:6:{s:8:"filename";s:22:"sources/downloads2.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:10:"SHORT_TEXT";s:11:"description";s:33:"The title of the download licence";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The text of the download licence";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:20:"add_download_licence";s:11:"description";s:23:"Add a download licence.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the new download licence";}}s:21:"edit_download_licence";a:5:{s:8:"filename";s:22:"sources/downloads2.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:38:"The ID of the download licence to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The title of the download licence";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The text of the download licence";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:21:"edit_download_licence";s:11:"description";s:24:"Edit a download licence.";s:5:"flags";a:0:{}}s:23:"delete_download_licence";a:5:{s:8:"filename";s:22:"sources/downloads2.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:40:"The ID of the download licence to delete";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:23:"delete_download_licence";s:11:"description";s:26:"Delete a download licence.";s:5:"flags";a:0:{}}s:12:"log_download";a:5:{s:8:"filename";s:22:"sources/downloads2.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:39:"The ID of the download being downloaded";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:149:"The size of the download (if zero, no bandwidth will be done - zero implies either an empty file, or a remote file that doesn't affect our bandwidth)";s:11:"phpdoc_name";s:4:"size";}i:2;a:5:{s:4:"name";s:10:"got_before";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the download has been downloaded before";s:11:"phpdoc_name";s:10:"got_before";}}s:4:"name";s:12:"log_download";s:11:"description";s:85:"Log a file download, update the downloads counter and the download bandwidth counter.";s:5:"flags";a:0:{}}s:22:"get_download_bandwidth";a:6:{s:8:"filename";s:27:"sources/downloads_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_download_bandwidth";s:11:"description";s:42:"Get the currently used download bandwidth.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:47:"The currently used download bandwidth (forever)";}}s:25:"get_download_archive_size";a:6:{s:8:"filename";s:27:"sources/downloads_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_download_archive_size";s:11:"description";s:82:"Get the total size of all the currently available downloads in a formatted string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:55:"The total size of all the currently available downloads";}}s:25:"get_num_archive_downloads";a:6:{s:8:"filename";s:27:"sources/downloads_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_num_archive_downloads";s:11:"description";s:44:"Get the total number of downloads available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:39:"The total number of downloads available";}}s:28:"get_num_downloads_downloaded";a:6:{s:8:"filename";s:27:"sources/downloads_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"get_num_downloads_downloaded";s:11:"description";s:60:"Get the total number of files downloaded since installation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:55:"The total number of files downloaded since installation";}}s:15:"init__ecommerce";a:5:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__ecommerce";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"ecommerce_test_mode";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"ecommerce_test_mode";s:11:"description";s:57:"Check whether the system is in test mode (normally, not).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:29:"ecommerce_get_currency_symbol";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"currency";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:"The currency (null: configured).";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:29:"ecommerce_get_currency_symbol";s:11:"description";s:48:"Get the symbol of the currency we're trading in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency symbol.";}}s:27:"get_transaction_form_fields";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"trans_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:40:"The transaction ID (null: auto-generate)";s:11:"phpdoc_name";s:8:"trans_id";}i:1;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The purchase ID";s:11:"phpdoc_name";s:11:"purchase_id";}i:2;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The item name";s:11:"phpdoc_name";s:9:"item_name";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:10:"The amount";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The currency";s:11:"phpdoc_name";s:8:"currency";}i:5;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:37:"The length (null: not a subscription)";s:11:"phpdoc_name";s:6:"length";}i:6;a:5:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The length units";s:11:"phpdoc_name";s:12:"length_units";}i:7;a:7:{s:4:"name";s:3:"via";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 service the payment will go via via (null: autodetect).";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:27:"get_transaction_form_fields";s:11:"description";s:28:"Get transaction form fields.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A pair: The form fields, Hidden fields";}}s:19:"get_transaction_fee";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:1;a:5:{s:4:"name";s:3:"via";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The service the payment went via.";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:19:"get_transaction_fee";s:11:"description";s:89:"Find a transaction fee from a transaction amount. Regular fees aren't taken into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:7:"The fee";}}s:23:"make_transaction_button";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:6:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}i:5;a:7:{s:4:"name";s:3:"via";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 service the payment will go via via (null: autodetect).";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:23:"make_transaction_button";s:11:"description";s:36:"Make a transaction (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:24:"make_subscription_button";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:8:{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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The human-readable product title.";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:3;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"A transaction amount.";s:11:"phpdoc_name";s:6:"amount";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The subscription length in the units.";s:11:"phpdoc_name";s:6:"length";}i:5;a:6:{s:4:"name";s:12:"length_units";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The length units.";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"d w m y";}i:6;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}i:7;a:7:{s:4:"name";s:3:"via";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 service the payment will go via via (null: autodetect).";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:24:"make_subscription_button";s:11:"description";s:37:"Make a subscription (payment) button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:18:"make_cancel_button";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:1;a:5:{s:4:"name";s:3:"via";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"The service the payment will go via via.";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:18:"make_cancel_button";s:11:"description";s:40:"Make a subscription cancellation button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:116:"The button (null: no special cancellation -- just delete the subscription row to stop Composr regularly re-charging)";}}s:25:"send_invoice_notification";a:5:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{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:22:"The member to send to.";s:11:"phpdoc_name";s:9:"member_id";}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:15:"The invoice ID.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:25:"send_invoice_notification";s:11:"description";s:41:"Send an invoice notification to a member.";s:5:"flags";a:0:{}}s:17:"find_all_products";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}}s:4:"name";s:17:"find_all_products";s:11:"description";s:127:"Find all products, except ones from hooks that might have too many to list (so don't rely on this for important backend tasks).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"A list of maps of product details.";}}s:12:"find_product";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"search";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The item name/product codename";s:11:"phpdoc_name";s:6:"search";}i:1;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}i:2;a:7:{s:4:"name";s:17:"search_item_names";s:7:"default";s:13:"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 $search refers to the item name rather than the product codename";s:11:"phpdoc_name";s:17:"search_item_names";}}s:4:"name";s:12:"find_product";s:11:"description";s:13:"Find product.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:43:"The product-class object (null: not found).";}}s:16:"find_product_row";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"search";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The product codename/item name";s:11:"phpdoc_name";s:6:"search";}i:1;a:7:{s:4:"name";s:9:"site_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:167:"Whether to make sure the language for item_name is the site default language (crucial for when we read/go to third-party sales systems and use the item_name as a key).";s:11:"phpdoc_name";s:9:"site_lang";}i:2;a:7:{s:4:"name";s:17:"search_item_names";s:7:"default";s:13:"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 $search refers to the item name rather than the product codename";s:11:"phpdoc_name";s:17:"search_item_names";}}s:4:"name";s:16:"find_product_row";s:11:"description";s:22:"Find product info row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:89:"A pair: The product-class map, and the product codename (both will be null if not found).";}}s:21:"perform_local_payment";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"perform_local_payment";s:11:"description";s:45:"Find whether local payment will be performed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether local payment will be performed.";}}s:14:"dev__ipn_debug";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"ipn_target";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:18:"URL to send IPN to";s:11:"phpdoc_name";s:10:"ipn_target";}i:1;a:5:{s:4:"name";s:11:"ipn_message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:47:"Post parameters to send, in query string format";s:11:"phpdoc_name";s:11:"ipn_message";}}s:4:"name";s:14:"dev__ipn_debug";s:11:"description";s:299:"Send an IPN call to a remote host for debugging purposes.Useful for making one Composr site (caller site) pretend to be PayPal, when talking to another (target site).Make sure the target site has the caller site listed as the backdoor_ip in the base config, or the verification will happen and fail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Output";}}s:25:"handle_transaction_script";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"handle_transaction_script";s:11:"description";s:13:"Handle IPN's.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:144:"The ID of the purchase-type (meaning depends on item_name) (null: no transaction; will only return null when not running the 'ecommerce' script)";}}s:28:"handle_confirmed_transaction";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:58:"The ID of the purchase-type (meaning depends on item_name)";s:11:"phpdoc_name";s:11:"purchase_id";}i:1;a:5:{s:4:"name";s:9:"item_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:376:"The item being purchased (aka the product) (blank: subscription, so we need to look it up). One might wonder why we use $item_name instead of $type_code. This is because we pass human-readable-names (hopefully unique!!!) through payment gateways because they are visually shown to the user. (blank: it's a subscription, so look up via a key map across the subscriptions table)";s:11:"phpdoc_name";s:9:"item_name";}i:2;a:6:{s:4:"name";s:14:"payment_status";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The status this transaction is telling of";s:11:"phpdoc_name";s:14:"payment_status";s:3:"set";s:38:"Pending Completed SModified SCancelled";}i:3;a:5:{s:4:"name";s:11:"reason_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:40:"The code that gives reason to the status";s:11:"phpdoc_name";s:11:"reason_code";}i:4;a:5:{s:4:"name";s:14:"pending_reason";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:45:"The reason it is in pending status (if it is)";s:11:"phpdoc_name";s:14:"pending_reason";}i:5;a:5:{s:4:"name";s:4:"memo";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:34:"A note attached to the transaction";s:11:"phpdoc_name";s:4:"memo";}i:6;a:5:{s:4:"name";s:8:"mc_gross";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"The amount of money";s:11:"phpdoc_name";s:8:"mc_gross";}i:7;a:5:{s:4:"name";s:11:"mc_currency";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:29:"The currency the amount is in";s:11:"phpdoc_name";s:11:"mc_currency";}i:8;a:5:{s:4:"name";s:6:"txn_id";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The transaction ID";s:11:"phpdoc_name";s:6:"txn_id";}i:9;a:5:{s:4:"name";s:13:"parent_txn_id";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:32:"The ID of the parent transaction";s:11:"phpdoc_name";s:13:"parent_txn_id";}i:10;a:5:{s:4:"name";s:6:"period";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:79:"The subscription period (blank: N/A / unknown: trust is correct on the gateway)";s:11:"phpdoc_name";s:6:"period";}i:11;a:5:{s:4:"name";s:3:"via";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"The payment gateway";s:11:"phpdoc_name";s:3:"via";}}s:4:"name";s:28:"handle_confirmed_transaction";s:11:"description";s:65:"Handle IPN's that have been confirmed as backed up by real money.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:35:"The product purchased (null: error)";}}s:14:"fatal_ipn_exit";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"error";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The message.";s:11:"phpdoc_name";s:5:"error";}i:1;a:7:{s:4:"name";s:12:"dont_trigger";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Dont trigger an error";s:11:"phpdoc_name";s:12:"dont_trigger";}}s:4:"name";s:14:"fatal_ipn_exit";s:11:"description";s:45:"Exit Composr and write to the error log file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:24:"make_cart_payment_button";a:6:{s:8:"filename";s:21:"sources/ecommerce.php";s:10:"parameters";a:2:{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";}i:1;a:5:{s:4:"name";s:8:"currency";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The currency to use.";s:11:"phpdoc_name";s:8:"currency";}}s:4:"name";s:24:"make_cart_payment_button";s:11:"description";s:36:"Make a shopping cart payment button.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The button";}}s:26:"add_usergroup_subscription";a:6:{s:8:"filename";s:22:"sources/ecommerce2.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:4:"cost";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:5:{s:4:"name";s:6:"length";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:6:{s:4:"name";s:12:"length_units";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:5:{s:4:"name";s:10:"auto_recur";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:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:49:"The usergroup that purchasing gains membership to";s:11:"phpdoc_name";s:8:"group_id";}i:7;a:5:{s:4:"name";s:12:"uses_primary";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:5:{s:4:"name";s:7:"enabled";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:5:{s:4:"name";s:10:"mail_start";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:5:{s:4:"name";s:8:"mail_end";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:5:{s:4:"name";s:9:"mail_uhoh";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";}}s:4:"name";s:26:"add_usergroup_subscription";s:11:"description";s:29:"Add a usergroup subscription.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:27:"edit_usergroup_subscription";a:5:{s:8:"filename";s:22:"sources/ecommerce2.php";s:10:"parameters";a:14:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:4:"cost";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:4;a:5:{s:4:"name";s:6:"length";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:5;a:6:{s:4:"name";s:12:"length_units";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:6;a:5:{s:4:"name";s:10:"auto_recur";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:7;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:49:"The usergroup that purchasing gains membership to";s:11:"phpdoc_name";s:8:"group_id";}i:8;a:5:{s:4:"name";s:12:"uses_primary";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:9;a:5:{s:4:"name";s:7:"enabled";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:10;a:5:{s:4:"name";s:10:"mail_start";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:11;a:5:{s:4:"name";s:8:"mail_end";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:12;a:5:{s:4:"name";s:9:"mail_uhoh";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:13;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:43:"Other e-mails to send (null: do not change)";s:11:"phpdoc_name";s:5:"mails";}}s:4:"name";s:27:"edit_usergroup_subscription";s:11:"description";s:30:"Edit a usergroup subscription.";s:5:"flags";a:0:{}}s:29:"delete_usergroup_subscription";a:5:{s:8:"filename";s:22:"sources/ecommerce2.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:9:"uhoh_mail";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:47:"The cancellation mail to send out (blank: none)";s:11:"phpdoc_name";s:9:"uhoh_mail";}}s:4:"name";s:29:"delete_usergroup_subscription";s:11:"description";s:32:"Delete a usergroup subscription.";s:5:"flags";a:0:{}}s:25:"find_member_subscriptions";a:6:{s:8:"filename";s:35:"sources/ecommerce_subscriptions.php";s:10:"parameters";a:2:{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:11:"The member.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:28:"usergroup_subscriptions_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:47:"Whether to limit us to usergroup subscriptions.";s:11:"phpdoc_name";s:28:"usergroup_subscriptions_only";}}s:4:"name";s:25:"find_member_subscriptions";s:11:"description";s:26:"Find member subscriptions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"A list of subscriptions and subscription lifetime positions.";}}s:30:"prepare_templated_subscription";a:6:{s:8:"filename";s:35:"sources/ecommerce_subscriptions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"subscription";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Subscription details.";s:11:"phpdoc_name";s:12:"subscription";}}s:4:"name";s:30:"prepare_templated_subscription";s:11:"description";s:60:"Get template-ready parameters for displaying a subscription.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"Template-ready parameters.";}}s:23:"is_encryption_available";a:6:{s:8:"filename";s:22:"sources/encryption.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"is_encryption_available";s:11:"description";s:156:"Determine whether the necessary PHP extensions to support encryption are available. For normal use, you should probably use is_encryption_enabled() instead.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:21:"Encryption available?";}}s:21:"is_encryption_enabled";a:6:{s:8:"filename";s:22:"sources/encryption.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"is_encryption_enabled";s:11:"description";s:115:"Determine whether encryption support is available and enabled in the site's preferences, and the keys are in place.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Encryption enabled?";}}s:12:"encrypt_data";a:6:{s:8:"filename";s:22:"sources/encryption.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:20:"Data to be encrypted";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:12:"encrypt_data";s:11:"description";s:460:"Encrypt some data using asymmetric encryption and the site's public key. This will return the original data if encryption is disabled. It will add a magic marker to the start of the returned string to show it's been encrypted.A fatal error will occur if the public key cannot be found, or if encryption fails for whatever reason.Note that this will blindly re-encrypt data which has already been encrypted. You should check data with is_data_encrypted() first.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:33:"Encrypted data, with magic marker";}}s:17:"is_data_encrypted";a:6:{s:8:"filename";s:22:"sources/encryption.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:13:"Data to check";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:17:"is_data_encrypted";s:11:"description";s:92:"Determine if some data has already been encrypted: i.e. if it has a magic encryption marker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"Encrypted?";}}s:30:"remove_magic_encryption_marker";a:6:{s:8:"filename";s:22:"sources/encryption.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:4:"Data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:30:"remove_magic_encryption_marker";s:11:"description";s:260:"Remove the magic encryption marker from some data. This should be used if the data is to be displayed or presented for editing, but not if it's to be put in the database.If the data does not have a magic encryption marker, the original string will be returned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"Data, without the magic marker";}}s:12:"decrypt_data";a:6:{s:8:"filename";s:22:"sources/encryption.php";s:10:"parameters";a:2:{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:20:"Data to be decrypted";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:10:"passphrase";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"Passphrase to unlock the site's private key";s:11:"phpdoc_name";s:10:"passphrase";}}s:4:"name";s:12:"decrypt_data";s:11:"description";s:228:"Decrypt data using asymmetric encryption, and the site's private key (as unlocked by the given passphrase).A fatal error will occur if the passphrase is empty, the key cannot be found, or if decryption fails for whatever reason.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Decrypted data";}}s:15:"endpoint_script";a:5:{s:8:"filename";s:21:"sources/endpoints.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"endpoint_script";s:11:"description";s:26:"Endpoint API entry script.";s:5:"flags";a:0:{}}s:13:"get_exif_data";a:6:{s:8:"filename";s:16:"sources/exif.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:56:"This is the path of the photo which may contain metadata";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:8:"filename";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:94:"This is the original filename of the photo which may contain metadata (null: derive from path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:13:"get_exif_data";s:11:"description";s:172:"Get metadata from an image, using EXIF primarily, but also XMP and IPTC to get image descriptions.Also gets GPS data and canonicalises in decimal as Latitude and Longitude.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:43:"Map of metadata, using standard EXIF naming";}}s:15:"_get_simple_gps";a:6:{s:8:"filename";s:16:"sources/exif.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"exif";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"EXIF data";s:11:"phpdoc_name";s:4:"exif";}}s:4:"name";s:15:"_get_simple_gps";s:11:"description";s:69:"Work out canonical Latitude/Longitude details from complex EXIF bits.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Extra derived EXIF data";}}s:22:"get_exif_image_caption";a:6:{s:8:"filename";s:16:"sources/exif.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:56:"This is the path of the photo which may contain metadata";s:11:"phpdoc_name";s:4:"path";}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:69:"This is the original filename of the photo which may contain metadata";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:22:"get_exif_image_caption";s:11:"description";s:190:"Attempt to retrieve a caption from photos seeking XMP, then EXIF, then IPTC binary last.Check this file is a valid image file before passing to this function as an empty string often annoys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"Whichever caption is found";}}s:10:"store_exif";a:5:{s:8:"filename";s:16:"sources/exif.php";s:10:"parameters";a:4:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:4:"exif";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The EXIF data";s:11:"phpdoc_name";s:4:"exif";}i:3;a:7:{s:4:"name";s:3:"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:"Extra metadata to store, against explicit field IDs (null: none)";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:10:"store_exif";s:11:"description";s:346:"Save metadata into content type's custom fields, by looking for fields named after the EXIF/EXIF-emulated metadata (specifically in English).Spaces may be added to the names to make them prettier, but otherwise they must be the same.Designed to be used by headless-importers, e.g. bulk importing of media files, to make the process a bit smarter.";s:5:"flags";a:0:{}}s:12:"cleanup_exif";a:6:{s:8:"filename";s:16:"sources/exif.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"metadata";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"The EXIF data";s:11:"phpdoc_name";s:8:"metadata";}}s:4:"name";s:12:"cleanup_exif";s:11:"description";s:48:"Cleanup some EXIF, to the correct character set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"Cleaned up EXIF data";}}s:13:"init__failure";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__failure";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"suggest_fatalistic";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"suggest_fatalistic";s:11:"description";s:98:"Give the user an option to see a stack trace by adding in a link, but only if they have permission";s:5:"flags";a:0:{}}s:9:"zip_error";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"errno";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The zip error number.";s:11:"phpdoc_name";s:5:"errno";}i:1;a:7:{s:4:"name";s:4:"mzip";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether mzip was used.";s:11:"phpdoc_name";s:4:"mzip";}}s:4:"name";s:9:"zip_error";s:11:"description";s:44:"Terminate with an error caused by unzipping.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Error message.";}}s:14:"_param_invalid";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{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:53:"The parameter deemed to have an invalid value somehow";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:3:"ret";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:75:"The value of the parameter deemed invalid (null: we known we can't recover)";s:11:"phpdoc_name";s:3:"ret";}i:2;a:5:{s:4:"name";s:6:"posted";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the parameter is a POST parameter";s:11:"phpdoc_name";s:6:"posted";}}s:4:"name";s:14:"_param_invalid";s:11:"description";s:32:"Handle invalid parameter values.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:135:"Fixed parameter (usually the function won't return [instead will give an error], but in special cases, it can filter an invalid return)";}}s:20:"improperly_filled_in";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{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:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"posted";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:62:"Whether the parameter is a POST parameter (null: undetermined)";s:11:"phpdoc_name";s:6:"posted";}i:2;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:42:"The array we're extracting parameters from";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:20:"improperly_filled_in";s:11:"description";s:37:"Complain about a field being missing.";s:5:"flags";a:0:{}}s:25:"improperly_filled_in_post";a:5:{s:8:"filename";s:19:"sources/failure.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:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:25:"improperly_filled_in_post";s:11:"description";s:42:"Complain about a POST field being missing.";s:5:"flags";a:0:{}}s:22:"_composr_error_handler";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:6:{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:54:"Error type indicator (tiny human-readable text string)";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:5:"errno";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The error code-number";s:11:"phpdoc_name";s:5:"errno";}i:2;a:5:{s:4:"name";s:6:"errstr";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:17:"The error message";s:11:"phpdoc_name";s:6:"errstr";}i:3;a:5:{s:4:"name";s:7:"errfile";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The file the error occurred in";s:11:"phpdoc_name";s:7:"errfile";}i:4;a:5:{s:4:"name";s:7:"errline";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The line the error occurred on";s:11:"phpdoc_name";s:7:"errline";}i:5;a:5:{s:4:"name";s:11:"syslog_type";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The syslog type (used by GAE logging)";s:11:"phpdoc_name";s:11:"syslog_type";}}s:4:"name";s:22:"_composr_error_handler";s:11:"description";s:88:"Called by 'composr_error_handler'. Composr error handler (hooked into PHP error system).";s:5:"flags";a:0:{}}s:12:"_warn_screen";a:6:{s:8:"filename";s:19:"sources/failure.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:26:"The title of the warn page";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:60:"The text to put on the warn page (either Tempcode or string)";s:11:"phpdoc_name";s:4:"text";}i:2;a:7:{s:4:"name";s:12:"provide_back";s:7:"default";s:12:"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 a back button";s:11:"phpdoc_name";s:12:"provide_back";}i:3;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether match key messages / redirects should be supported";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:12:"_warn_screen";s:11:"description";s:33:"Get the Tempcode for a warn page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The warn page";}}s:19:"_sanitise_error_msg";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The error message";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:19:"_sanitise_error_msg";s:11:"description";s:46:"Do a terminal execution on a defined page type";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"Sanitised error message";}}s:13:"_generic_exit";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:5:{s:4:"name";s:8:"template";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"Name of the terminal page template";s:11:"phpdoc_name";s:8:"template";}i:2;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:74:"?Whether match key messages / redirects should be supported (null: detect)";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:13:"_generic_exit";s:11:"description";s:46:"Do a terminal execution on a defined page type";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:10:"_inet_pton";a:6:{s:8:"filename";s:19:"sources/failure.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:10:"IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:10:"_inet_pton";s:11:"description";s:26:"Normalise an IPv6 address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:18:"Normalised address";}}s:13:"ip_cidr_check";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:2:{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:10:"IP address";s:11:"phpdoc_name";s:2:"ip";}i:1;a:5:{s:4:"name";s:4:"cidr";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"CIDR range (e.g. 204.93.240.0/24)";s:11:"phpdoc_name";s:4:"cidr";}}s:4:"name";s:13:"ip_cidr_check";s:11:"description";s:118:"Find if an IP address is within a CIDR range. Based on comment in PHP manual: http://php.net/manual/en/ref.network.php";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:25:"_log_hack_attack_and_exit";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:67:"The reason for the hack attack. This has to be a language string ID";s:11:"phpdoc_name";s:6:"reason";}i:1;a:7:{s:4:"name";s:14:"reason_param_a";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:97:"A parameter for the hack attack language string (this should be based on a unique ID, preferably)";s:11:"phpdoc_name";s:14:"reason_param_a";}i:2;a:7:{s:4:"name";s:14:"reason_param_b";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:67:"A more illustrative parameter, which may be anything (e.g. a title)";s:11:"phpdoc_name";s:14:"reason_param_b";}i:3;a:7:{s:4:"name";s:6:"silent";s:7:"default";s:13:"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 silently log the hack rather than also exiting";s:11:"phpdoc_name";s:6:"silent";}i:4;a:7:{s:4:"name";s:11:"instant_ban";s:7:"default";s:13:"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 a ban should be immediate";s:11:"phpdoc_name";s:11:"instant_ban";}}s:4:"name";s:25:"_log_hack_attack_and_exit";s:11:"description";s:130:"Log a hackattack, then displays an error message. It also attempts to send an e-mail to the staff alerting them of the hackattack.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:10:"add_ip_ban";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:4:{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 IP address to ban";s:11:"phpdoc_name";s:2:"ip";}i:1;a:7:{s:4:"name";s:7:"descrip";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:"Explanation for ban";s:11:"phpdoc_name";s:7:"descrip";}i:2;a:7:{s:4:"name";s:9:"ban_until";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:34:"When to ban until (null: no limit)";s:11:"phpdoc_name";s:9:"ban_until";}i:3;a:7:{s:4:"name";s:12:"ban_positive";s:7:"default";s:12:"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 this is a positive ban (as opposed to a cached negative)";s:11:"phpdoc_name";s:12:"ban_positive";}}s:4:"name";s:10:"add_ip_ban";s:11:"description";s:14:"Add an IP-ban.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether a change actually happened";}}s:13:"remove_ip_ban";a:5:{s:8:"filename";s:19:"sources/failure.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:23:"The IP address to unban";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:13:"remove_ip_ban";s:11:"description";s:17:"Remove an IP-ban.";s:5:"flags";a:0:{}}s:21:"get_webservice_result";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"error_message";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:13:"error_message";}}s:4:"name";s:21:"get_webservice_result";s:11:"description";s:62:"Lookup error on compo.sr, to see if there is more information.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:49:"The result from the web service (null: no result)";}}s:11:"_fatal_exit";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:6:"return";s:7:"default";s:13:"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:"Whether to return";s:11:"phpdoc_name";s:6:"return";}}s:4:"name";s:11:"_fatal_exit";s:11:"description";s:158:"Do a fatal exit, echo the header (if possible) and an error message, followed by a debugging back-trace.It also adds an entry to the error log, for reference.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:24:"relay_error_notification";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"A error message (in HTML)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:10:"ocproducts";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:23:"Also send to ocProducts";s:11:"phpdoc_name";s:10:"ocproducts";}i:2;a:7:{s:4:"name";s:17:"notification_type";s:7:"default";s:14:"error_occurred";s:11:"default_raw";s:16:"'error_occurred'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The notification type";s:11:"phpdoc_name";s:17:"notification_type";}}s:4:"name";s:24:"relay_error_notification";s:11:"description";s:99:"Relay an error message, if appropriate, to e-mail listeners (sometimes ocProducts, and site staff).";s:5:"flags";a:0:{}}s:19:"may_see_stack_dumps";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"may_see_stack_dumps";s:11:"description";s:50:"Find whether the current user may see stack dumps.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the current user may see stack dumps";}}s:14:"die_html_trace";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"An error message";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:14:"die_html_trace";s:11:"description";s:110:"Echo an error message, and a debug back-trace of the current execution stack. Use this for debugging purposes.";s:5:"flags";a:0:{}}s:24:"put_value_in_stack_trace";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"Complex value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:24:"put_value_in_stack_trace";s:11:"description";s:45:"Prepare a value for display in a stack trace.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"String version";}}s:14:"get_html_trace";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_html_trace";s:11:"description";s:94:"Return a debugging back-trace of the current execution stack. Use this for debugging purposes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Debugging backtrace";}}s:27:"_look_for_match_key_message";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"natural_text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:49:"Message screen text that is about to be displayed";s:11:"phpdoc_name";s:12:"natural_text";}i:1;a:7:{s:4:"name";s:12:"only_if_zone";s:7:"default";s:13:"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:"Only if it is a zone-level match-key";s:11:"phpdoc_name";s:12:"only_if_zone";}i:2;a:7:{s:4:"name";s:15:"only_text_match";s:7:"default";s:13:"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 only consider text matches, not match-key matches";s:11:"phpdoc_name";s:15:"only_text_match";}}s:4:"name";s:27:"_look_for_match_key_message";s:11:"description";s:103:"See if a match-key message affects the error context we are in. May also internally trigger a redirect.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:29:"The message (null: no change)";}}s:14:"_access_denied";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"class";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The class of error (e.g. PRIVILEGE)";s:11:"phpdoc_name";s:5:"class";}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:40:"The parameter given to the error message";s:11:"phpdoc_name";s:5:"param";}i:2;a:5:{s:4:"name";s:11:"force_login";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:68:"Force the user to login (even if perhaps they are logged in already)";s:11:"phpdoc_name";s:11:"force_login";}}s:4:"name";s:14:"_access_denied";s:11:"description";s:108:"Show a helpful access-denied page. Has a login ability if it senses that logging in could curtail the error.";s:5:"flags";a:0:{}}s:16:"set_throw_errors";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:16:"_throwing_errors";s:7:"default";s:12:"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 we should throw errors";s:11:"phpdoc_name";s:16:"_throwing_errors";}}s:4:"name";s:16:"set_throw_errors";s:11:"description";s:79:"Specify if errors should be thrown, rather than resulting in HTML exit screens.";s:5:"flags";a:0:{}}s:15:"throwing_errors";a:6:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"throwing_errors";s:11:"description";s:119:"Find whether we should throw errors, rather than create HTML exit screens with the error messages / correction screens.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to are throwing errors";}}s:24:"syndicate_spammer_report";a:5:{s:8:"filename";s:28:"sources/failure_spammers.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"ip_addr";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:20:"IP address to report";s:11:"phpdoc_name";s:7:"ip_addr";}i:1;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"Username address to report";s:11:"phpdoc_name";s:8:"username";}i:2;a:5:{s:4:"name";s:5:"email";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:23:"Email address to report";s:11:"phpdoc_name";s:5:"email";}i:3;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The reason for the report (blank: none)";s:11:"phpdoc_name";s:6:"reason";}i:4;a:7:{s:4:"name";s:13:"trigger_error";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:158:"Whether to emit a Composr error, on error. Should not be 'true' for automatic spammer reports, as the spammer should not see the submission process in action!";s:11:"phpdoc_name";s:13:"trigger_error";}}s:4:"name";s:24:"syndicate_spammer_report";s:11:"description";s:50:"Syndicate a spammer report out to wherever we can.";s:5:"flags";a:0:{}}s:14:"init__feedback";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__feedback";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:32:"process_overridden_comment_forum";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:13:"feedback_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:73:"The feedback code, which we may have overridden the comment forum against";s:11:"phpdoc_name";s:13:"feedback_code";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:51:"The resource ID whose comment topic may need moving";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:83:"The new/current category ID, which we may have overridden the comment forum against";s:11:"phpdoc_name";s:11:"category_id";}i:3;a:5:{s:4:"name";s:15:"old_category_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:75:"The old category ID, which we may have overridden the comment forum against";s:11:"phpdoc_name";s:15:"old_category_id";}}s:4:"name";s:32:"process_overridden_comment_forum";s:11:"description";s:217:"Get the comment topic forum for a feedback scenario, and move an existing comment topic to a different forum if the category has moved and the categories have divergent configured comment topic forums (Conversr only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The comment topic forum";}}s:29:"find_overridden_comment_forum";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"feedback_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:73:"The feedback code, which we may have overridden the comment forum against";s:11:"phpdoc_name";s:13:"feedback_code";}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:8:"?ID_TEXT";s:11:"description";s:114:"The category ID, which we may have overridden the comment forum against (null: no category ID to override against)";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:29:"find_overridden_comment_forum";s:11:"description";s:52:"Get the comment topic forum for a feedback scenario.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:114:"The comment topic forum (may be integer as string, or string forum name - so use forum_id_from_name on the result)";}}s:32:"get_details_behind_feedback_code";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:2:{i:0;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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:32:"get_details_behind_feedback_code";s:11:"description";s:51:"Find who submitted a piece of feedbackable content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:187:"A tuple: Content title (null means unknown), Submitter (null means unknown), URL (for use within current browser session), URL (for use in emails / sharing), Content meta aware info array";}}s:22:"embed_feedback_systems";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:9:"page_name";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:9:"page_name";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:25:"Whether rating is allowed";s:11:"phpdoc_name";s:12:"allow_rating";}i:3;a:6:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:55:"Whether comments/reviews is allowed (reviews allowed=2)";s:11:"phpdoc_name";s:14:"allow_comments";s:3:"set";s:5:"0 1 2";}i:4;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether trackbacks are allowed";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:5;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the content is validated";s:11:"phpdoc_name";s:9:"validated";}i:6;a:5:{s:4:"name";s:9:"submitter";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:26:"Content owner (null: none)";s:11:"phpdoc_name";s:9:"submitter";}i:7;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:23:"URL to view the content";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Content title";s:11:"phpdoc_name";s:13:"content_title";}i:9;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:51:"Forum to post comments in (null: site-wide default)";s:11:"phpdoc_name";s:5:"forum";}i:10;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:33:"Time of comment topic (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:22:"embed_feedback_systems";s:11:"description";s:83:"Main wrapper function to embed miscellaneous feedback systems into a module output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"Tuple: Rating details, Comment details, Trackback details";}}s:19:"post_comment_script";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"post_comment_script";s:11:"description";s:23:"Do an AJAX comment post";s:5:"flags";a:0:{}}s:14:"get_rating_box";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:1;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:4;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:143:"Whether this resource allows rating (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:12:"allow_rating";}i:5;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:26:"Content owner (null: none)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:14:"get_rating_box";s:11:"description";s:67:"Get Tempcode for doing ratings (sits above get_rating_simple_array)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:32:"Tempcode for complete rating box";}}s:14:"display_rating";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:1;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:4;a:7:{s:4:"name";s:11:"display_tpl";s:7:"default";s:20:"RATING_INLINE_STATIC";s:11:"default_raw";s:22:"'RATING_INLINE_STATIC'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The template to use to display the rating box";s:11:"phpdoc_name";s:11:"display_tpl";}i:5;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:26:"Content owner (null: none)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:14:"display_rating";s:11:"description";s:27:"Display rating using images";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:35:"Tempcode for complete trackback box";}}s:23:"get_rating_simple_array";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:1;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:4;a:7:{s:4:"name";s:8:"form_tpl";s:7:"default";s:11:"RATING_FORM";s:11:"default_raw";s:13:"'RATING_FORM'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The template to use to display the rating box";s:11:"phpdoc_name";s:8:"form_tpl";}i:5;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:26:"Content owner (null: none)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:23:"get_rating_simple_array";s:11:"description";s:50:"Get rating information for the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:213:"Current rating information (ready to be passed into a template). RATING is the rating (out of 10), NUM_RATINGS is the number of ratings so far, RATING_FORM is the Tempcode of the rating box (null: rating disabled)";}}s:13:"already_rated";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:16:"rating_for_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:98:"List of types (download, etc) that this rating is for. All need to be rated for it to return true.";s:11:"phpdoc_name";s:16:"rating_for_types";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:13:"already_rated";s:11:"description";s:58:"Find whether you have rated the specified resource before.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the resource has already been rated";}}s:16:"actualise_rating";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:143:"Whether this resource allows rating (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:12:"allow_rating";}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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:4;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}}s:4:"name";s:16:"actualise_rating";s:11:"description";s:150:"Actually adds a rating to the specified resource.It performs full checking of inputs, and will log a hackattack if the rating is not between 1 and 10.";s:5:"flags";a:0:{}}s:28:"actualise_give_rating_points";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"actualise_give_rating_points";s:11:"description";s:47:"Assign points to the current member for rating.";s:5:"flags";a:0:{}}s:25:"actualise_specific_rating";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:8:{i:0;a:6:{s:4:"name";s:6:"rating";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:27:"Rating given (null: unrate)";s:11:"phpdoc_name";s:6:"rating";s:5:"range";s:4:"1 10";}i:1;a:5:{s:4:"name";s:9:"page_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The page name the rating is on";s:11:"phpdoc_name";s:9:"page_name";}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:27:"The member doing the rating";s:11:"phpdoc_name";s:9:"member_id";}i:3;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:48:"The type (download, etc) that this rating is for";s:11:"phpdoc_name";s:12:"content_type";}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:38:"The second level type (probably blank)";s:11:"phpdoc_name";s:4:"type";}i:5;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The ID of the type that this rating is for";s:11:"phpdoc_name";s:10:"content_id";}i:6;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:7;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:109:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know)";s:11:"phpdoc_name";s:13:"content_title";}}s:4:"name";s:25:"actualise_specific_rating";s:11:"description";s:40:"Implement a rating at the quantum level.";s:5:"flags";a:0:{}}s:12:"get_comments";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:12:{i:0;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:52:"The type (download, etc) that this commenting is for";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The ID of the type that this commenting is for";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:7:{s:4:"name";s:24:"invisible_if_no_comments";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether the comment box will be invisible if there are not yet any comments (and you're not staff)";s:11:"phpdoc_name";s:24:"invisible_if_no_comments";}i:4;a:7:{s:4:"name";s:5:"forum";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:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:5:"forum";}i:5;a:7:{s:4:"name";s:12:"post_warning";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:57:"The default post to use (null: standard courtesy warning)";s:11:"phpdoc_name";s:12:"post_warning";}i:6;a:7:{s:4:"name";s:9:"_comments";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:91:"The raw comment array (null: lookup). This is useful if we want to pass it through a filter";s:11:"phpdoc_name";s:9:"_comments";}i:7;a:7:{s:4:"name";s:14:"explicit_allow";s:7:"default";s:13:"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 skip permission checks";s:11:"phpdoc_name";s:14:"explicit_allow";}i:8;a:7:{s:4:"name";s:7:"reverse";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:93:"Whether to show in reverse date order (affects default search order only) (null: read config)";s:11:"phpdoc_name";s:7:"reverse";}i:9;a:7:{s:4:"name";s:17:"highlight_by_user";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:43:"User to highlight the posts of (null: none)";s:11:"phpdoc_name";s:17:"highlight_by_user";}i:10;a:7:{s:4:"name";s:13:"allow_reviews";s:7:"default";s:13:"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 allow ratings along with the comment (like reviews)";s:11:"phpdoc_name";s:13:"allow_reviews";}i:11;a:7:{s:4:"name";s:17:"num_to_show_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:31:"Maximum to load (null: default)";s:11:"phpdoc_name";s:17:"num_to_show_limit";}}s:4:"name";s:12:"get_comments";s:11:"description";s:110:"Get the Tempcode containing all the comments posted, and the comments posting form for the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The Tempcode for the comment topic";}}s:24:"extract_topic_identifier";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"full_text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"Potentially complex topic title";s:11:"phpdoc_name";s:9:"full_text";}}s:4:"name";s:24:"extract_topic_identifier";s:11:"description";s:209:"Topic titles/descriptions (depending on forum driver) are encoded for both human readable data, and a special ID code: this will extract just the ID code, or return the whole thing if no specific pattern match";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"Simplified topic title";}}s:22:"actualise_post_comment";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}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:52:"The type (download, etc) that this commenting is for";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The ID of the type that this commenting is for";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:4;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}i:5;a:7:{s:4:"name";s:5:"forum";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:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:5:"forum";}i:6;a:7:{s:4:"name";s:13:"avoid_captcha";s:7:"default";s:13:"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 not require a captcha";s:11:"phpdoc_name";s:13:"avoid_captcha";}i:7;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:176:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver (hence is the last parameter).";s:11:"phpdoc_name";s:9:"validated";}i:8;a:7:{s:4:"name";s:14:"explicit_allow";s:7:"default";s:13:"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 allowance";s:11:"phpdoc_name";s:14:"explicit_allow";}i:9;a:7:{s:4:"name";s:18:"no_success_message";s:7:"default";s:13:"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 skip a success message";s:11:"phpdoc_name";s:18:"no_success_message";}i:10;a:7:{s:4:"name";s:7:"private";s:7:"default";s:13:"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 posts made should not be shared";s:11:"phpdoc_name";s:7:"private";}i:11;a:7:{s:4:"name";s:10:"post_title";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:54:"Title of the post (null: lookup from POST environment)";s:11:"phpdoc_name";s:10:"post_title";}i:12;a:7:{s:4:"name";s:4:"post";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:53:"Body of the post (null: lookup from POST environment)";s:11:"phpdoc_name";s:4:"post";}i:13;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:33:"Time of comment topic (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:22:"actualise_post_comment";s:11:"description";s:39:"Add comments to the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether a hidden post has been made";}}s:18:"update_spacer_post";a:5:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this resource allows comments (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:14:"allow_comments";}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:52:"The type (download, etc) that this commenting is for";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The ID of the type that this commenting is for";s:11:"phpdoc_name";s:10:"content_id";}i:3;a:5:{s:4:"name";s:11:"content_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:110:"The URL to where the commenting will pass back to (to put into the comment topic header) (URLPATH or Tempcode)";s:11:"phpdoc_name";s:11:"content_url";}i:4;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:146:"The title to where the commenting will pass back to (to put into the comment topic header) (null: don't know, but not first post so not important)";s:11:"phpdoc_name";s:13:"content_title";}i:5;a:7:{s:4:"name";s:5:"forum";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:58:"The name of the forum to use (null: default comment forum)";s:11:"phpdoc_name";s:5:"forum";}i:6;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:33:"ID of spacer post (null: unknown)";s:11:"phpdoc_name";s:7:"post_id";}}s:4:"name";s:18:"update_spacer_post";s:11:"description";s:57:"Update the spacer post of a comment topic, after an edit.";s:5:"flags";a:0:{}}s:14:"get_trackbacks";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:4:{i:0;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:51:"The type (download, etc) that this trackback is for";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The ID of the type that this trackback is for";s:11:"phpdoc_name";s:10:"content_id";}i:2;a:5:{s:4:"name";s:15:"allow_trackback";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:146:"Whether this resource allows trackback (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:15:"allow_trackback";}i:3;a:7:{s:4:"name";s:4:"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:59:"The type of details being fetched (currently: blank or XML)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:14:"get_trackbacks";s:11:"description";s:115:"Get the Tempcode containing all the trackbacks received, and the trackback posting form for the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:35:"Tempcode for complete trackback box";}}s:24:"actualise_post_trackback";a:6:{s:8:"filename";s:20:"sources/feedback.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:146:"Whether this resource allows trackback (if not, this function does nothing - but it's nice to move out this common logic into the shared function)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}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:51:"The type (download, etc) that this trackback is for";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The ID of the type that this trackback is for";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:24:"actualise_post_trackback";s:11:"description";s:41:"Add trackbacks to the specified resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether trackbacks are on";}}s:21:"set_comment_forum_for";a:5:{s:8:"filename";s:21:"sources/feedback2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"feedback_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:57:"The feedback code to override the comment topic forum for";s:11:"phpdoc_name";s:13:"feedback_code";}i:1;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:68:"The category ID to override the comment topic forum for (null: none)";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The new comment topic forum";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:21:"set_comment_forum_for";s:11:"description";s:88:"Set an overridden comment topic forum for a feedback scenario. Moves topics if required.";s:5:"flags";a:0:{}}s:16:"trackback_script";a:5:{s:8:"filename";s:21:"sources/feedback2.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"trackback_script";s:11:"description";s:50:"Output the trackback script and handle trackbacks.";s:5:"flags";a:0:{}}s:15:"feedback_fields";a:6:{s:8:"filename";s:21:"sources/feedback2.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether rating is currently/by-default allowed for this resource";s:11:"phpdoc_name";s:12:"allow_rating";}i:2;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:67:"Whether comments are currently/by-default allowed for this resource";s:11:"phpdoc_name";s:14:"allow_comments";}i:3;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:130:"Whether trackbacks are currently/by-default allowed for this resource (null: this resource does not support trackbacks regardless)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:4;a:5:{s:4:"name";s:15:"send_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether we're allowed to send trackbacks for this resource";s:11:"phpdoc_name";s:15:"send_trackbacks";}i:5;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:45:"The current/by-default notes for this content";s:11:"phpdoc_name";s:5:"notes";}i:6;a:7:{s:4:"name";s:13:"allow_reviews";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:98:"Whether reviews are currently/by-default allowed for this resource (null: no reviews allowed here)";s:11:"phpdoc_name";s:13:"allow_reviews";}i:7;a:7:{s:4:"name";s:11:"default_off";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:113:"Whether the default values for the allow options is actually off (this determines how the tray auto-hides itself)";s:11:"phpdoc_name";s:11:"default_off";}i:8;a:7:{s:4:"name";s:9:"has_notes";s:7:"default";s:12:"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:"If there's to be a notes field";s:11:"phpdoc_name";s:9:"has_notes";}i:9;a:7:{s:4:"name";s:11:"show_header";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether to show a header";s:11:"phpdoc_name";s:11:"show_header";}i:10;a:7:{s:4:"name";s:17:"field_name_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:17:"Field name prefix";s:11:"phpdoc_name";s:17:"field_name_prefix";}}s:4:"name";s:15:"feedback_fields";s:11:"description";s:117:"Get the Tempcode for the manipulation of the feedback fields for some content, if they are enabled in the Admin Zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"The feedback editing fields";}}s:15:"send_trackbacks";a:6:{s:8:"filename";s:21:"sources/feedback2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"_urls";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:59:"A comma-separated list of URLs to which we should trackback";s:11:"phpdoc_name";s:5:"_urls";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The article title";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:7:"excerpt";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The excerpt to send";s:11:"phpdoc_name";s:7:"excerpt";}}s:4:"name";s:15:"send_trackbacks";s:11:"description";s:44:"Send a trackback to somebody else's website.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:21:"catalogue_file_script";a:5:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"catalogue_file_script";s:11:"description";s:46:"Farm out the files for catalogue entry fields.";s:5:"flags";a:0:{}}s:29:"option_value_from_field_array";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Field map";s:11:"phpdoc_name";s:5:"field";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:4:"name";}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:6:"string";s:11:"description";s:19:"Field default value";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:29:"option_value_from_field_array";s:11:"description";s:75:"Parse field options into a setting map and return a specific value from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The value";}}s:19:"parse_field_options";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"__options";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Options string";s:11:"phpdoc_name";s:9:"__options";}}s:4:"name";s:19:"parse_field_options";s:11:"description";s:48:"Parse a field options string into a setting map.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The setting map";}}s:20:"get_catalogue_fields";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{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:48:"The name of the catalogue (null: all catalogues)";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:20:"get_catalogue_fields";s:11:"description";s:69:"Ensure a catalogues fields are loaded up in a cache, and return them.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:56:"The fields (empty array if the catalogue does not exist)";}}s:15:"get_fields_hook";a:6:{s:8:"filename";s:18:"sources/fields.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:8:"Codename";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:15:"get_fields_hook";s:11:"description";s:41:"Get a fields hook, from a given codename.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"object";s:11:"description";s:11:"Hook object";}}s:32:"manage_custom_fields_donext_link";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}}s:4:"name";s:32:"manage_custom_fields_donext_link";s:11:"description";s:69:"Get extra do-next icon for managing custom fields for a content type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"Extra do-next icon (single item array, or empty array if catalogues not installed)";}}s:33:"manage_custom_fields_entry_points";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}}s:4:"name";s:33:"manage_custom_fields_entry_points";s:11:"description";s:73:"Get extra entry point data for managing custom fields for a content type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"Extra get_entry_points data";}}s:18:"has_tied_catalogue";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:1:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}}s:4:"name";s:18:"has_tied_catalogue";s:11:"description";s:49:"Find whether a 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:23:"get_bound_content_entry";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:2:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Content entry ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:23:"get_bound_content_entry";s:11:"description";s:48:"Get catalogue entry ID bound to a content entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:37:"Bound catalogue entry ID (null: none)";}}s:25:"append_form_custom_fields";a:5:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:7:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:34:"Content entry ID (null: new entry)";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:28:"Fields (passed by reference)";s:11:"phpdoc_name";s:6:"fields";}i:3;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:35:"Hidden Fields (passed by reference)";s:11:"phpdoc_name";s:6:"hidden";}i:4;a:7:{s:4:"name";s:12:"field_filter";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:38:"Limit fields to a set (null: no limit)";s:11:"phpdoc_name";s:12:"field_filter";}i:5;a:7:{s:4:"name";s:22:"field_filter_whitelist";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether $field_filter is a whitelist (if false, it is a blacklist)";s:11:"phpdoc_name";s:22:"field_filter_whitelist";}i:6;a:7:{s:4:"name";s:19:"add_separate_header";s:7:"default";s:13:"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 add a separate header above the fields, so long as not all the fields are already under some other header";s:11:"phpdoc_name";s:19:"add_separate_header";}}s:4:"name";s:25:"append_form_custom_fields";s:11:"description";s:67:"Append fields to content add/edit form for gathering custom fields.";s:5:"flags";a:0:{}}s:23:"save_form_custom_fields";a:5:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:3:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Content entry ID";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:6:"old_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:72:"Content entry ID (prior to possible rename) (null: definitely unchanged)";s:11:"phpdoc_name";s:6:"old_id";}}s:4:"name";s:23:"save_form_custom_fields";s:11:"description";s:37:"Save custom fields to a content item.";s:5:"flags";a:0:{}}s:25:"delete_form_custom_fields";a:5:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:2:{i:0;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:26:"Content type hook codename";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Content entry ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:25:"delete_form_custom_fields";s:11:"description";s:38:"Delete custom fields for content item.";s:5:"flags";a:0:{}}s:32:"create_selection_list_field_type";a:6:{s:8:"filename";s:18:"sources/fields.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:4:"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:20:"Field type to select";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:20:"limit_to_storage_set";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to only show options in the same storage set as $type";s:11:"phpdoc_name";s:20:"limit_to_storage_set";}}s:4:"name";s:32:"create_selection_list_field_type";s:11:"description";s:45:"Get a list of all field types to choose from.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"List of field types";}}s:26:"find_broken_filedump_links";a:6:{s:8:"filename";s:20:"sources/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"find_broken_filedump_links";s:11:"description";s:59:"Find broken filedump links, and try and find how to fix it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:53:"Filedump broken links, to replacement path (or null).";}}s:21:"update_filedump_links";a:5:{s:8:"filename";s:20:"sources/filedump.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:71:"Old path (give a path relative to uploads/filedump, with leading slash)";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:6:"string";s:11:"description";s:71:"New path (give a path relative to uploads/filedump, with leading slash)";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:21:"update_filedump_links";s:11:"description";s:60:"Re-map pre-existing filedump links from one path to another.";s:5:"flags";a:0:{}}s:19:"find_filedump_links";a:6:{s:8:"filename";s:20:"sources/filedump.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"focus";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:117:"Focus on a particular filedump file (give a path relative to uploads/filedump, with leading slash) (blank: no filter)";s:11:"phpdoc_name";s:5:"focus";}}s:4:"name";s:19:"find_filedump_links";s:11:"description";s:29:"Find all filedump links used.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"Filedump links used, and where";}}s:22:"extract_filedump_links";a:5:{s:8:"filename";s:20:"sources/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Comcode to scan";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"An identifier for where this Comcode was from";s:11:"phpdoc_name";s:10:"identifier";}i:2;a:5:{s:4:"name";s:5:"focus";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:117:"Focus on a particular filedump file (give a path relative to uploads/filedump), with leading slash (blank: no filter)";s:11:"phpdoc_name";s:5:"focus";}i:3;a:5:{s:4:"name";s:10:"paths_used";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:33:"Paths found (passed by reference)";s:11:"phpdoc_name";s:10:"paths_used";}}s:4:"name";s:22:"extract_filedump_links";s:11:"description";s:59:"Find filedump links within some Comcode (an approximation).";s:5:"flags";a:0:{}}s:11:"init__files";a:5:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__files";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:26:"cms_file_put_contents_safe";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:4:{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:10:"File path.";s:11:"phpdoc_name";s:4:"path";}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:14:"File contents.";s:11:"phpdoc_name";s:8:"contents";}i:2;a:7:{s:4:"name";s:5:"flags";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:19:"FILE_WRITE_* flags.";s:11:"phpdoc_name";s:5:"flags";}i:3;a:7:{s:4:"name";s:11:"retry_depth";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:69:"How deep it is into retrying if somehow the data did not get written.";s:11:"phpdoc_name";s:11:"retry_depth";}}s:4:"name";s:26:"cms_file_put_contents_safe";s:11:"description";s:61:"Write out to a file, with lots of error checking and locking.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:34:"_cms_file_put_contents_safe_failed";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"error_message";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:35:"Error message (Tempcode or string).";s:11:"phpdoc_name";s:13:"error_message";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:10:"File path.";s:11:"phpdoc_name";s:4:"path";}i:2;a:7:{s:4:"name";s:5:"flags";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:19:"FILE_WRITE_* flags.";s:11:"phpdoc_name";s:5:"flags";}}s:4:"name";s:34:"_cms_file_put_contents_safe_failed";s:11:"description";s:70:"If cms_file_put_contents_safe has failed, process the error messaging.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Success status (always false).";}}s:16:"php_return_bytes";a:6:{s:8:"filename";s:17:"sources/files.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:24:"PHP config option value.";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:16:"php_return_bytes";s:11:"description";s:80:"Get the number of bytes for a PHP config option. Code taken from the PHP manual.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Number of bytes.";}}s:13:"get_file_size";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:1:{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:71:"The URL that the file size of is being worked out for. Should be local.";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:13:"get_file_size";s:11:"description";s:144:"Get a formatted-string filesize for the specified file. It is formatted as such: x MB/KB/Bytes (or unknown). It is assumed that the file exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"The formatted-string file size";}}s:15:"clean_file_size";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"bytes";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"The number of bytes the file has";s:11:"phpdoc_name";s:5:"bytes";}}s:4:"name";s:15:"clean_file_size";s:11:"description";s:30:"Format the specified filesize.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"The formatted-string file size";}}s:21:"better_parse_ini_file";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:72:"The path to the ini file to open (null: given contents in $file instead)";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:4:"file";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:55:"The contents of the file (null: the file needs opening)";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:21:"better_parse_ini_file";s:11:"description";s:64:"Parse the specified INI file, and get an array of what it found.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A map of the contents of the ini files";}}s:18:"should_ignore_file";a:6:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"filepath";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"File path (relative to Composr base directory)";s:11:"phpdoc_name";s:8:"filepath";}i:1;a:7:{s:4:"name";s:7:"bitmask";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:57:"Bitmask of extra stuff to ignore (see IGNORE_* constants)";s:11:"phpdoc_name";s:7:"bitmask";}i:2;a:7:{s:4:"name";s:16:"bitmask_defaults";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:79:"Set this to 0 if you don't want the default IGNORE_* constants to carry through";s:11:"phpdoc_name";s:16:"bitmask_defaults";}}s:4:"name";s:18:"should_ignore_file";s:11:"description";s:154:"Find whether a file is known to be something that should/could be there but isn't a Composr distribution file, or for some other reason should be ignored.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether it should be ignored";}}s:15:"deldir_contents";a:5:{s:8:"filename";s:17:"sources/files.php";s:10:"parameters";a:3:{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:39:"The pathname to the directory to delete";s:11:"phpdoc_name";s:3:"dir";}i:1;a:7:{s:4:"name";s:16:"default_preserve";s:7:"default";s:13:"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 preserve files there by default";s:11:"phpdoc_name";s:16:"default_preserve";}i:2;a:7:{s:4:"name";s:10:"just_files";s:7:"default";s:13:"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 just delete files";s:11:"phpdoc_name";s:10:"just_files";}}s:4:"name";s:15:"deldir_contents";s:11:"description";s:105:"Delete all the contents of a directory, and any subdirectories of that specified directory (recursively).";s:5:"flags";a:0:{}}s:12:"init__files2";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__files2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"cache_and_carry";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"func";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Function to call";s:11:"phpdoc_name";s:4:"func";}i:1;a:5:{s:4:"name";s:4:"args";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:22:"Arguments to call with";s:11:"phpdoc_name";s:4:"args";}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:37:"Timeout in minutes (null: no timeout)";s:11:"phpdoc_name";s:7:"timeout";}}s:4:"name";s:15:"cache_and_carry";s:11:"description";s:54:"Call a function, with inbuilt on-disk caching support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:77:"The function result OR for http_download_file calls a tuple of result details";}}s:22:"make_missing_directory";a:6:{s:8:"filename";s:18:"sources/files2.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:14:"Path to create";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:22:"make_missing_directory";s:11:"description";s:103:"Make a missing required directory, or exit with an error if we cannot (unless error suppression is on).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:24:"_intelligent_write_error";a:5:{s:8:"filename";s:18:"sources/files2.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:61:"File path that could not be written (full path, not relative)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:24:"_intelligent_write_error";s:11:"description";s:79:"Discern the cause of a file-write error, and show an appropriate error message.";s:5:"flags";a:0:{}}s:31:"_intelligent_write_error_inline";a:6:{s:8:"filename";s:18:"sources/files2.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:35:"File path that could not be written";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:31:"_intelligent_write_error_inline";s:11:"description";s:81:"Discern the cause of a file-write error, and return an appropriate error message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Message";}}s:16:"cms_get_temp_dir";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"cms_get_temp_dir";s:11:"description";s:109:"Find details of where we can save temporary files, taking into account PHP's platform-dependent difficulties.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:153:"A tuple: preferred temporary path to save to, whether there's a problem saving in the system path, the system path to save to, the local path to save to.";}}s:12:"_cms_tempnam";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"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:38:"The prefix of the temporary file name.";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:12:"_cms_tempnam";s:11:"description";s:229:"Create file with unique file name, but works around compatibility issues between servers. Note that the file is NOT automatically deleted. You should also delete it using "@unlink", as some servers have problems with permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:46:"The name of the temporary file (false: error).";}}s:10:"_sync_file";a:5:{s:8:"filename";s:18:"sources/files2.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:42:"File/directory name to sync on (full path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:10:"_sync_file";s:11:"description";s:116:"Provides a hook for file synchronisation between mirrored servers. Called after any file creation, deletion or edit.";s:5:"flags";a:0:{}}s:15:"_sync_file_move";a:5:{s:8:"filename";s:18:"sources/files2.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:4:"PATH";s:11:"description";s:63:"File/directory name to move from (may be full or relative path)";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:4:"PATH";s:11:"description";s:61:"File/directory name to move to (may be full or relative path)";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:15:"_sync_file_move";s:11:"description";s:111:"Provides a hook for file-move synchronisation between mirrored servers. Called after any rename or move action.";s:5:"flags";a:0:{}}s:16:"_deldir_contents";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:3:{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:39:"The pathname to the directory to delete";s:11:"phpdoc_name";s:3:"dir";}i:1;a:7:{s:4:"name";s:16:"default_preserve";s:7:"default";s:13:"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 preserve files there by default";s:11:"phpdoc_name";s:16:"default_preserve";}i:2;a:7:{s:4:"name";s:10:"just_files";s:7:"default";s:13:"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 just delete files";s:11:"phpdoc_name";s:10:"just_files";}}s:4:"name";s:16:"_deldir_contents";s:11:"description";s:105:"Delete all the contents of a directory, and any subdirectories of that specified directory (recursively).";s:5:"flags";a:0:{}}s:8:"make_csv";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:41:"List of maps, each map representing a row";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:8:"filename";s:7:"default";s:8:"data.csv";s:11:"default_raw";s:10:"'data.csv'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"Filename to output";s:11:"phpdoc_name";s:8:"filename";}i:2;a:7:{s:4:"name";s:7:"headers";s:7:"default";s:12:"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 output CSV headers";s:11:"phpdoc_name";s:7:"headers";}i:3;a:7:{s:4:"name";s:15:"output_and_exit";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether to output/exit when we're done instead of return";s:11:"phpdoc_name";s:15:"output_and_exit";}i:4;a:7:{s:4:"name";s:12:"outfile_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:31:"File to spool into (null: none)";s:11:"phpdoc_name";s:12:"outfile_path";}i:5;a:7:{s:4:"name";s:8:"callback";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:163:"Callback for dynamic row insertion (null: none). Only implemented for the excel_support addon. Is passed: row just done, next row (or null), returns rows to insert";s:11:"phpdoc_name";s:8:"callback";}i:6;a:7:{s:4:"name";s:8:"metadata";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:82:"List of maps, each map representing metadata of a row; supports 'url' (null: none)";s:11:"phpdoc_name";s:8:"metadata";}}s:4:"name";s:8:"make_csv";s:11:"description";s:26:"Output data to a CSV file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:107:"CSV data (we might not return though, depending on $exit; if $outfile_path is not null, this will be blank)";}}s:17:"delete_csv_column";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"in_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:20:"Path to the CSV file";s:11:"phpdoc_name";s:7:"in_path";}i:1;a:5:{s:4:"name";s:11:"column_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Column name";s:11:"phpdoc_name";s:11:"column_name";}}s:4:"name";s:17:"delete_csv_column";s:11:"description";s:32:"Delete a column from a CSV file.";s:5:"flags";a:0:{}}s:13:"find_php_path";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"cgi";s:7:"default";s:13:"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 we need a CGI interpreter";s:11:"phpdoc_name";s:3:"cgi";}}s:4:"name";s:13:"find_php_path";s:11:"description";s:32:"Find path to the PHP executable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:11:"Path to PHP";}}s:22:"get_directory_contents";a:6:{s:8:"filename";s:18:"sources/files2.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:18:"The path to search";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:8:"rel_path";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:84:"The path we prepend to everything we find (intended to be used inside the recursion)";s:11:"phpdoc_name";s:8:"rel_path";}i:2;a:7:{s:4:"name";s:11:"special_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 get special files";s:11:"phpdoc_name";s:11:"special_too";}i:3;a:7:{s:4:"name";s:7:"recurse";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to recurse (if not, will return directories as files)";s:11:"phpdoc_name";s:7:"recurse";}i:4;a:7:{s:4:"name";s:12:"files_wanted";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get files (if not, will return directories as files)";s:11:"phpdoc_name";s:12:"files_wanted";}}s:4:"name";s:22:"get_directory_contents";s:11:"description";s:86:"Get the contents of a directory, recursively. It is assumed that the directory exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The contents of the directory";}}s:18:"get_directory_size";a:6:{s:8:"filename";s:18:"sources/files2.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:18:"The path to search";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:7:"recurse";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to recurse (if not, will return directories as files)";s:11:"phpdoc_name";s:7:"recurse";}}s:4:"name";s:18:"get_directory_size";s:11:"description";s:78:"Get the size in bytes of a directory. It is assumed that the directory exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:25:"The extra space requested";}}s:27:"get_upload_limit_config_url";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"get_upload_limit_config_url";s:11:"description";s:57:"Get the URL to the config option group for editing limits";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:71:"The URL to the config option group for editing limits (null: no access)";}}s:17:"get_max_file_size";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:13:"source_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:"Member we consider quota for (null: do not consider quota)";s:11:"phpdoc_name";s:13:"source_member";}i:1;a:7:{s:4:"name";s:10:"connection";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:53:"Database connection to get quota from (null: site DB)";s:11:"phpdoc_name";s:10:"connection";}i:2;a:7:{s:4:"name";s:19:"consider_php_limits";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to consider limitations in PHP's configuration";s:11:"phpdoc_name";s:19:"consider_php_limits";}}s:4:"name";s:17:"get_max_file_size";s:11:"description";s:74:"Get the maximum allowed upload filesize, as specified in the configuration";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:45:"The maximum allowed upload filesize, in bytes";}}s:15:"check_extension";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:4:{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:12:"The filename";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:31:"skip_server_side_security_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:46:"Whether to skip the server side security check";s:11:"phpdoc_name";s:31:"skip_server_side_security_check";}i:2;a:7:{s:4:"name";s:14:"file_to_delete";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:"Delete this file if we have to exit (null: no file to delete)";s:11:"phpdoc_name";s:14:"file_to_delete";}i:3;a:7:{s:4:"name";s:13:"accept_errors";s:7:"default";s:13:"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 allow errors without dying";s:11:"phpdoc_name";s:13:"accept_errors";}}s:4:"name";s:15:"check_extension";s:11:"description";s:131:"Check uploaded file extensions for possible malicious intent, and if some is found, an error is put out, and the hackattack logged.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:13:"delete_upload";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"upload_path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The path to the upload directory";s:11:"phpdoc_name";s:11:"upload_path";}i:1;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:2;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The table field name";s:11:"phpdoc_name";s:5:"field";}i:3;a:5:{s:4:"name";s:8:"id_field";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The table ID field name, or a map array";s:11:"phpdoc_name";s:8:"id_field";}i:4;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:12:"The table ID";s:11:"phpdoc_name";s:2:"id";}i:5;a:7:{s:4:"name";s:7:"new_url";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:70:"The new URL to use (null: deleting without replacing: no change check)";s:11:"phpdoc_name";s:7:"new_url";}}s:4:"name";s:13:"delete_upload";s:11:"description";s:227:"Delete an uploaded file from disk, if it's URL has changed (i.e. it's been replaced, leaving a redundant disk file).This MUST be run before the edit/delete operation, as it scans for the existing value to know what is changing.";s:5:"flags";a:0:{}}s:28:"check_shared_bandwidth_usage";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"extra";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"The extra bandwidth requested";s:11:"phpdoc_name";s:5:"extra";}}s:4:"name";s:28:"check_shared_bandwidth_usage";s:11:"description";s:65:"Check bandwidth usage against page view ratio for shared hosting.";s:5:"flags";a:0:{}}s:24:"check_shared_space_usage";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"extra";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The extra space in bytes requested";s:11:"phpdoc_name";s:5:"extra";}}s:4:"name";s:24:"check_shared_space_usage";s:11:"description";s:66:"Check disk space usage against page view ratio for shared hosting.";s:5:"flags";a:0:{}}s:19:"_http_download_file";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:19:{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 download";s:11:"phpdoc_name";s:3:"url";}i:1;a:8:{s:4:"name";s:10:"byte_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:91:"The number of bytes to download. This is not a guarantee, it is a minimum (null: all bytes)";s:11:"phpdoc_name";s:10:"byte_limit";s:5:"range";s:5:"1 max";}i:2;a:7:{s:4:"name";s:13:"trigger_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to throw a Composr error, on error";s:11:"phpdoc_name";s:13:"trigger_error";}i:3;a:7:{s:4:"name";s:11:"no_redirect";s:7:"default";s:13:"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 block redirects (returns null when found)";s:11:"phpdoc_name";s:11:"no_redirect";}i:4;a:7:{s:4:"name";s:2:"ua";s:7:"default";s:7:"Composr";s:11:"default_raw";s:9:"'Composr'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:29:"The user-agent to identify as";s:11:"phpdoc_name";s:2:"ua";}i:5;a:7:{s:4:"name";s:11:"post_params";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:145:"An optional array of POST parameters to send; if this is null, a GET request is used (null: none). If $raw_post is set, it should be array($data)";s:11:"phpdoc_name";s:11:"post_params";}i:6;a:7:{s:4:"name";s:7:"cookies";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:49:"An optional array of cookies to send (null: none)";s:11:"phpdoc_name";s:7:"cookies";}i:7;a:7:{s:4:"name";s:6:"accept";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:44:"'accept' header value (null: don't pass one)";s:11:"phpdoc_name";s:6:"accept";}i:8;a:7:{s:4:"name";s:14:"accept_charset";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:52:"'accept-charset' header value (null: don't pass one)";s:11:"phpdoc_name";s:14:"accept_charset";}i:9;a:7:{s:4:"name";s:15:"accept_language";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:53:"'accept-language' header value (null: don't pass one)";s:11:"phpdoc_name";s:15:"accept_language";}i:10;a:7:{s:4:"name";s:13:"write_to_file";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:46:"File handle to write to (null: do not do that)";s:11:"phpdoc_name";s:13:"write_to_file";}i:11;a:7:{s:4:"name";s:7:"referer";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:29:"The HTTP referer (null: none)";s:11:"phpdoc_name";s:7:"referer";}i:12;a:7:{s:4:"name";s:4:"auth";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:"A pair: authentication username and password (null: none)";s:11:"phpdoc_name";s:4:"auth";}i:13;a:7:{s:4:"name";s:7:"timeout";s:7:"default";d:6;s:11:"default_raw";s:3:"6.0";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:11:"The timeout";s:11:"phpdoc_name";s:7:"timeout";}i:14;a:7:{s:4:"name";s:8:"raw_post";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether to treat the POST parameters as a raw POST (rather than using MIME)";s:11:"phpdoc_name";s:8:"raw_post";}i:15;a:7:{s:4:"name";s:5:"files";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:58:"Files to send. Map between field to file path (null: none)";s:11:"phpdoc_name";s:5:"files";}i:16;a:7:{s:4:"name";s:13:"extra_headers";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:"Extra headers to send (null: none)";s:11:"phpdoc_name";s:13:"extra_headers";}i:17;a:7:{s:4:"name";s:9:"http_verb";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:55:"HTTP verb (null: auto-decide based on other parameters)";s:11:"phpdoc_name";s:9:"http_verb";}i:18;a:7:{s:4:"name";s:16:"raw_content_type";s:7:"default";s:15:"application/xml";s:11:"default_raw";s:17:"'application/xml'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:42:"The content type to use if a raw HTTP post";s:11:"phpdoc_name";s:16:"raw_content_type";}}s:4:"name";s:19:"_http_download_file";s:11:"description";s:167:"Return the file in the URL by downloading it over HTTP. If a byte limit is given, it will only download that many bytes. It outputs warnings, returning null, on error.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:33:"The data downloaded (null: error)";}}s:16:"_read_in_headers";a:5:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"line";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The line";s:11:"phpdoc_name";s:4:"line";}}s:4:"name";s:16:"_read_in_headers";s:11:"description";s:62:"Read in any HTTP headers that we probe for, from an HTTP line.";s:5:"flags";a:0:{}}s:24:"get_webpage_meta_details";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{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:11:"Webpage URL";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:24:"get_webpage_meta_details";s:11:"description";s:32:"Extract meta details from a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A map of meta details extracted from the webpage";}}s:32:"_http_download_file_curl_headers";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"ch";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"cURL resource handle";s:11:"phpdoc_name";s:2:"ch";}i:1;a:5:{s:4:"name";s:6:"header";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:6:"Header";s:11:"phpdoc_name";s:6:"header";}}s:4:"name";s:32:"_http_download_file_curl_headers";s:11:"description";s:36:"Callback for receiving cURL headers.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"Length of header";}}s:29:"_http_download_file_curl_body";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"ch";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"cURL resource handle";s:11:"phpdoc_name";s:2:"ch";}i:1;a:5:{s:4:"name";s:3:"str";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"Body part";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:29:"_http_download_file_curl_body";s:11:"description";s:47:"Callback for receiving a part of the cURL body.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"Length of body part";}}s:26:"_detect_character_encoding";a:6:{s:8:"filename";s:18:"sources/files2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"The HTTP stream we will look through";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:26:"_detect_character_encoding";s:11:"description";s:161:"Final filter for downloader output: try a bit harder to detect the character encoding, in case it was not in an HTTP filter.Manipulates the $HTTP_CHARSET global.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Same as $out";}}s:34:"read_filtercode_parameter_from_env";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:2:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:7:{s:4:"name";s:10:"field_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:67:"The field type (null: work out what is there to read automatically)";s:11:"phpdoc_name";s:10:"field_type";}}s:4:"name";s:34:"read_filtercode_parameter_from_env";s:11:"description";s:49:"Read an Filtercode parameter value from GET/POST.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The parameter value";}}s:19:"form_for_filtercode";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:102:"String-based search filter (blank: make one up to cover everything, but only works if $table is known)";s:11:"phpdoc_name";s:6:"filter";}i:1;a:7:{s:4:"name";s:6:"labels";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:"Labels for field names (null: none, use auto-generated)";s:11:"phpdoc_name";s:6:"labels";}i:2;a:7:{s:4:"name";s:12:"content_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:63:"Content-type to auto-probe from (null: none, use string inputs)";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:7:{s:4:"name";s:5:"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:64:"Field types (null: none, use string inputs / defaults for table)";s:11:"phpdoc_name";s:5:"types";}}s:4:"name";s:19:"form_for_filtercode";s:11:"description";s:59:"Get a form for inputting unknown variables within a filter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"The form fields, The modded filter, Merger links";}}s:16:"parse_filtercode";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"String-based search filter";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:16:"parse_filtercode";s:11:"description";s:84:"Parse some string based Filtercode search filters into the expected array structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"Parsed structure";}}s:18:"unparse_filtercode";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"parsed";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Parsed structure";s:11:"phpdoc_name";s:6:"parsed";}}s:4:"name";s:18:"unparse_filtercode";s:11:"description";s:101:"Take some parsed Filtercode search filters into the string format (i.e. reverse of parse_filtercode).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"String-based search filter";}}s:28:"_fields_api_filtercode_named";a:6:{s:8:"filename";s:22:"sources/filtercode.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"Name of the catalogue (null: unknown; reduces performance)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:10:"filter_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:10:"filter_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:28:"_fields_api_filtercode_named";s:11:"description";s:49:"Find field by checking fields API, by field name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:22:"_fields_api_filtercode";a:6:{s:8:"filename";s:22:"sources/filtercode.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"Name of the catalogue (null: unknown; reduces performance)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:10:"filter_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:10:"filter_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:22:"_fields_api_filtercode";s:11:"description";s:47:"Find field by checking fields API, by field ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:40:"generate_filtercode_join_key_from_string";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:1:{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:12:"Input string";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:40:"generate_filtercode_join_key_from_string";s:11:"description";s:153:"Produce a key we can use for SQL join names, from some string that may be too complex for this. It should be reproducible and unique for the given input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"Suitable key name";}}s:18:"_default_conv_func";a:6:{s:8:"filename";s:22:"sources/filtercode.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:6:"object";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}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:17:"Content type info";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"Name of the catalogue (null: unknown; reduces performance)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:3;a:5:{s:4:"name";s:10:"extra_join";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:35:"List of joins (passed as reference)";s:11:"phpdoc_name";s:10:"extra_join";}i:4;a:5:{s:4:"name";s:12:"extra_select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"List of selects (passed as reference)";s:11:"phpdoc_name";s:12:"extra_select";}i:5;a:5:{s:4:"name";s:10:"filter_key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The field to get";s:11:"phpdoc_name";s:10:"filter_key";}i:6;a:5:{s:4:"name";s:10:"filter_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The field value for this";s:11:"phpdoc_name";s:10:"filter_val";}i:7;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database field data";s:11:"phpdoc_name";s:9:"db_fields";}i:8;a:5:{s:4:"name";s:15:"table_join_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:18:"_default_conv_func";s:11:"description";s:74:"Make sure we are doing necessary join to be able to access the given field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:140:"A triple: Proper database field name to access with, The fields API table type (blank: no special table), The new filter value (null: error)";}}s:17:"filtercode_to_sql";a:6:{s:8:"filename";s:22:"sources/filtercode.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:22:"Database object to use";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:7:"filters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"Parsed Filtercode structure";s:11:"phpdoc_name";s:7:"filters";}i:2;a:7:{s:4:"name";s:12:"content_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:81:"The content type (null: no function needed, direct in-table mapping always works)";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:7:{s:4:"name";s:7:"context";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:200:"First parameter to send to the conversion function, may mean whatever that function wants it to. If we have no conversion function, this is the name of a table to read field metadata from (null: none)";s:11:"phpdoc_name";s:7:"context";}i:4;a:7:{s:4:"name";s:15:"table_join_code";s:7:"default";s:1:"r";s:11:"default_raw";s:3:"'r'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"What MySQL will join the table with";s:11:"phpdoc_name";s:15:"table_join_code";}}s:4:"name";s:17:"filtercode_to_sql";s:11:"description";s:56:"Convert some Filtercode filters into some SQL fragments.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"Tuple: array of extra select, array of extra join, string of extra where";}}s:30:"prepare_filtercode_merger_link";a:6:{s:8:"filename";s:22:"sources/filtercode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"_link_filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Filtercode filter";s:11:"phpdoc_name";s:12:"_link_filter";}}s:4:"name";s:30:"prepare_filtercode_merger_link";s:11:"description";s:119:"Get template-ready details for a merger-link style selectcode. This is used to do filtering via drill-down using links.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"Template-ready details";}}s:20:"init__form_templates";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"init__form_templates";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"read_multi_code";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:116:"The parameter stub (stub of a series of POST parameters, made by cns_get_forum_multi_code_field's field or similar).";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"read_multi_code";s:11:"description";s:46:"Read a multi code from a named parameter stub.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The multi code.";}}s:30:"check_suhosin_request_quantity";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:3:"inc";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:36:"How much to increment the counter by";s:11:"phpdoc_name";s:3:"inc";}i:1;a:7:{s:4:"name";s:11:"name_length";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:29:"The name length being checked";s:11:"phpdoc_name";s:11:"name_length";}}s:4:"name";s:30:"check_suhosin_request_quantity";s:11:"description";s:136:"Ensure Suhosin is not going to break a request due to number of request form fields. Call this each time a field is added to the output.";s:5:"flags";a:0:{}}s:26:"check_suhosin_request_size";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:105:"Most determinitve size within wider request size (we'll assume we actually need 500 more bytes than this)";s:11:"phpdoc_name";s:4:"size";}}s:4:"name";s:26:"check_suhosin_request_size";s:11:"description";s:67:"Ensure Suhosin is not going to break a request due to request size.";s:5:"flags";a:0:{}}s:30:"url_default_parameters__enable";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"url_default_parameters__enable";s:11:"description";s:107:"Enable reading in default parameters from the GET environment. This is typically called before 'add' forms.";s:5:"flags";a:0:{}}s:31:"url_default_parameters__disable";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"url_default_parameters__disable";s:11:"description";s:107:"Disable reading in default parameters from the GET environment. This is typically called after 'add' forms.";s:5:"flags";a:0:{}}s:22:"take_param_int_modeavg";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"setting";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:101:"The current setting (null: we have to work it out); if non-null, the function will immediately return";s:11:"phpdoc_name";s:7:"setting";}i:1;a:5:{s:4:"name";s:11:"db_property";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The property";s:11:"phpdoc_name";s:11:"db_property";}i:2;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The table to average within";s:11:"phpdoc_name";s:5:"table";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The last-resort default";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:22:"take_param_int_modeavg";s:11:"description";s:118:"Find a default property, defaulting to the average of what is there already, or the given default if really necessary.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"The value";}}s:14:"attach_wysiwyg";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"attach_wysiwyg";s:11:"description";s:26:"Attach the WYSIWYG editor.";s:5:"flags";a:0:{}}s:20:"handle_max_file_size";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"Hidden fields";s:11:"phpdoc_name";s:6:"hidden";}i:1;a:8:{s:4:"name";s:21:"regular_max_size_type";s:7:"default";s:4:"file";s:11:"default_raw";s:6:"'file'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:57:"Code representing the media types we are using limits for";s:11:"phpdoc_name";s:21:"regular_max_size_type";s:3:"set";s:10:"image file";}}s:4:"name";s:20:"handle_max_file_size";s:11:"description";s:60:"Insert hidden data for the maximum file size of form fields.";s:5:"flags";a:0:{}}s:15:"get_attachments";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:18:"posting_field_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The name of the field attachments are for";s:11:"phpdoc_name";s:18:"posting_field_name";}}s:4:"name";s:15:"get_attachments";s:11:"description";s:62:"Get what we need to get attachments in a form-field interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A pair: the attachments UI (Tempcode), the hidden attachment field";}}s:16:"get_posting_form";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:11:"submit_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The title of the form submission button";s:11:"phpdoc_name";s:11:"submit_name";}i:1;a:5:{s:4:"name";s:11:"submit_icon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The submit icon CSS class.";s:11:"phpdoc_name";s:11:"submit_icon";}i:2;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"The default post to put in.";s:11:"phpdoc_name";s:4:"post";}i:3;a:5:{s:4:"name";s:8:"post_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"Where the form is sent (URLPATH or Tempcode).";s:11:"phpdoc_name";s:8:"post_url";}i:4;a:5:{s:4:"name";s:13:"hidden_fields";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:92:"A form_input_hidden buildup of hidden fields (additional parameters sent to the target URL).";s:11:"phpdoc_name";s:13:"hidden_fields";}i:5;a:5:{s:4:"name";s:14:"specialisation";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"A buildup of leading extra fields, in a format compatible with the templates used by this function.";s:11:"phpdoc_name";s:14:"specialisation";}i:6;a:7:{s:4:"name";s:12:"post_comment";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:112:"The post comment (string or Tempcode). This gives information about how you should post. (null: no post comment)";s:11:"phpdoc_name";s:12:"post_comment";}i:7;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:6:"string";s:11:"description";s:37:"Extra info to put on the posting form";s:11:"phpdoc_name";s:5:"extra";}i:8;a:7:{s:4:"name";s:15:"specialisation2";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:113:"A buildup of trailing extra fields, in a format compatible with the templates used by this function. (null: none)";s:11:"phpdoc_name";s:15:"specialisation2";}i:9;a:7:{s:4:"name";s:14:"default_parsed";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:"The parsed Comcode. (null: calculate)";s:11:"phpdoc_name";s:14:"default_parsed";}i:10;a:7:{s:4:"name";s:10:"javascript";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:"JavaScript code to include (null: none)";s:11:"phpdoc_name";s:10:"javascript";}i:11;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:12;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"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 this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:13;a:7:{s:4:"name";s:11:"has_preview";s:7:"default";s:12:"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 the form supports previewing";s:11:"phpdoc_name";s:11:"has_preview";}i:14;a:7:{s:4:"name";s:13:"avoid_wysiwyg";s:7:"default";s:13:"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:"Whether to avoid WYSIWYG mode";s:11:"phpdoc_name";s:13:"avoid_wysiwyg";}i:15;a:7:{s:4:"name";s:16:"support_autosave";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to support auto-save";s:11:"phpdoc_name";s:16:"support_autosave";}i:16;a:7:{s:4:"name";s:22:"specialisation2_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:28:"Whether to support auto-save";s:11:"phpdoc_name";s:22:"specialisation2_hidden";}i:17;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:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:16:"get_posting_form";s:11:"description";s:48:"Creates a posting form, with attachment support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The posting form";}}s:18:"get_comcode_editor";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:3:{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:47:"The name of the field the editor is working for";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:7:{s:4:"name";s:8:"cut_down";s:7:"default";s:13:"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 make a cut-down version";s:11:"phpdoc_name";s:8:"cut_down";}i:2;a:7:{s:4:"name";s:16:"is_posting_field";s:7:"default";s:13:"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 this is for a posting field (i.e. has attachment support)";s:11:"phpdoc_name";s:16:"is_posting_field";}}s:4:"name";s:18:"get_comcode_editor";s:11:"description";s:25:"Creates a Comcode editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The Comcode editor";}}s:10:"wysiwyg_on";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;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:49:"Comcode that might be WYSIWYG edited (null: none)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:10:"wysiwyg_on";s:11:"description";s:37:"Find whether WYSIWYG is currently 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:26:"filter_form_field_required";a:6:{s:8:"filename";s:26:"sources/form_templates.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:7:"ID_TEXT";s:11:"description";s:27:"The codename for this field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether it is required by default";s:11:"phpdoc_name";s:8:"required";}}s:4:"name";s:26:"filter_form_field_required";s:11:"description";s:56:"Find if a form field is required via fields.xml filters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether it is required";}}s:27:"get_field_restrict_property";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"property";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The name of the property";s:11:"phpdoc_name";s:8:"property";}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:37:"The name of the field it's scoped for";s:11:"phpdoc_name";s:5:"field";}i:2;a:7:{s:4:"name";s:4:"page";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:"The page name scoped for (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:3;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:7:"?string";s:11:"description";s:45:"The page type scoped for (null: current type)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:27:"get_field_restrict_property";s:11:"description";s:76:"Get the value of a scoped field restriction property. Returns "first-found".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:33:"The property (null: non-existent)";}}s:19:"form_input_codename";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:10:"_maxlength";s:7:"default";i:40;s:11:"default_raw";s:2:"40";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:50:"The maximum length of the field (null: default 80)";s:11:"phpdoc_name";s:10:"_maxlength";}i:7;a:7:{s:4:"name";s:11:"extra_chars";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:46:"List of extra characters to allow (null: none)";s:11:"phpdoc_name";s:11:"extra_chars";}i:8;a:7:{s:4:"name";s:11:"placeholder";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:55:"The placeholder value for this input field (null: none)";s:11:"phpdoc_name";s:11:"placeholder";}}s:4:"name";s:19:"form_input_codename";s:11:"description";s:43:"Get the Tempcode for a codename input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_line";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:10:"_maxlength";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:51:"The maximum length of the field (null: default 255)";s:11:"phpdoc_name";s:10:"_maxlength";}i:7;a:7:{s:4:"name";s:4:"type";s:7:"default";s:4:"text";s:11:"default_raw";s:6:"'text'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The input type";s:11:"phpdoc_name";s:4:"type";}i:8;a:7:{s:4:"name";s:11:"placeholder";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:55:"The placeholder value for this input field (null: none)";s:11:"phpdoc_name";s:11:"placeholder";}i:9;a:7:{s:4:"name";s:7:"pattern";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:33:"Custom regex pattern (null: none)";s:11:"phpdoc_name";s:7:"pattern";}i:10;a:7:{s:4:"name";s:13:"pattern_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:50:"Custom regex pattern validation error (null: none)";s:11:"phpdoc_name";s:13:"pattern_error";}}s:4:"name";s:15:"form_input_line";s:11:"description";s:70:"Get the Tempcode for a text input line (an ).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:14:"form_input_url";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:14:"form_input_url";s:11:"description";s:27:"Get the Tempcode for a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:19:"form_input_username";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:11:"needs_match";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether it is required than a valid username is given";s:11:"phpdoc_name";s:11:"needs_match";}i:6;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:19:"form_input_username";s:11:"description";s:43:"Get the Tempcode for a username input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:17:"form_input_author";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:17:"form_input_author";s:11:"description";s:50:"Get the Tempcode for a author/username input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"form_input_email";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:16:"form_input_email";s:11:"description";s:48:"Get the Tempcode for a email-address input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:17:"form_input_colour";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:17:"form_input_colour";s:11:"description";s:36:"Get the Tempcode for a colour input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:20:"form_input_page_link";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:9:"page_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:29:"Page type to show (null: all)";s:11:"phpdoc_name";s:9:"page_type";}i:7;a:7:{s:4:"name";s:13:"get_title_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:42:"Whether to also get the title for the page";s:11:"phpdoc_name";s:13:"get_title_too";}}s:4:"name";s:20:"form_input_page_link";s:11:"description";s:39:"Get the Tempcode for a page-link input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:23:"form_input_line_comcode";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:52:"The default value for this input field (null: blank)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:23:"form_input_line_comcode";s:11:"description";s:55:"Get the Tempcode for a Comcode-enabled text input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_line_multi";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:145:"The base parameter name which this input field is for (as this takes multiple parameters, they are named ). This name must end with '_'.";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:13:"default_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:114:"An array of lines to use as default (at least this many lines, filled by this array, will be presented by default)";s:11:"phpdoc_name";s:13:"default_array";}i:4;a:5:{s:4:"name";s:12:"num_required";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The minimum number of inputs allowed.";s:11:"phpdoc_name";s:12:"num_required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:8:{s:4:"name";s:5:"class";s:7:"default";s:4:"line";s:11:"default_raw";s:6:"'line'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"CSS class for input.";s:11:"phpdoc_name";s:5:"class";s:3:"set";s:10:"line email";}i:7;a:7:{s:4:"name";s:7:"pattern";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:33:"Custom regex pattern (null: none)";s:11:"phpdoc_name";s:7:"pattern";}i:8;a:7:{s:4:"name";s:13:"pattern_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:50:"Custom regex pattern validation error (null: none)";s:11:"phpdoc_name";s:13:"pattern_error";}}s:4:"name";s:21:"form_input_line_multi";s:11:"description";s:119:"Get the Tempcode for a DHTML input field that takes multiple lines. A new line is added when the prior one isn't blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_text_multi";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:145:"The base parameter name which this input field is for (as this takes multiple parameters, they are named ). This name must end with '_'.";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:13:"default_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:118:"An array of texts to use as default (at least this many textareas, filled by this array, will be presented by default)";s:11:"phpdoc_name";s:13:"default_array";}i:4;a:5:{s:4:"name";s:12:"num_required";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:40:"The minimum number of textareas allowed.";s:11:"phpdoc_name";s:12:"num_required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:9:"maxlength";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 maximum length of the field (null: unlimited)";s:11:"phpdoc_name";s:9:"maxlength";}}s:4:"name";s:21:"form_input_text_multi";s:11:"description";s:127:"Get the Tempcode for a DHTML input field that takes multiple textareas. A new textarea is added when the prior one isn't blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:25:"form_input_username_multi";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:145:"The base parameter name which this input field is for (as this takes multiple parameters, they are named ). This name must end with '_'.";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:13:"default_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:114:"An array of lines to use as default (at least this many lines, filled by this array, will be presented by default)";s:11:"phpdoc_name";s:13:"default_array";}i:4;a:5:{s:4:"name";s:12:"num_required";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The minimum number of inputs allowed";s:11:"phpdoc_name";s:12:"num_required";}i:5;a:7:{s:4:"name";s:11:"needs_match";s:7:"default";s:12:"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 this is a required input field";s:11:"phpdoc_name";s:11:"needs_match";}i:6;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:25:"form_input_username_multi";s:11:"description";s:43:"Get the Tempcode for a username input line.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_text";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:7:"scrolls";s:7:"default";s:13:"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 the field scrolls";s:11:"phpdoc_name";s:7:"scrolls";}i:7;a:7:{s:4:"name";s:9:"maxlength";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 maximum length of the field (null: unlimited)";s:11:"phpdoc_name";s:9:"maxlength";}i:8;a:7:{s:4:"name";s:4:"rows";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:"Number of rows for text input (null: default)";s:11:"phpdoc_name";s:4:"rows";}}s:4:"name";s:15:"form_input_text";s:11:"description";s:45:"Get the Tempcode for a text input (textarea).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:23:"form_input_text_comcode";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:17:"force_non_wysiwyg";s:7:"default";s:13:"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:"Force non-WYSIWYG and non default-Comcode parsing";s:11:"phpdoc_name";s:17:"force_non_wysiwyg";}i:7;a:7:{s:4:"name";s:16:"description_side";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:49:"A secondary side description for this input field";s:11:"phpdoc_name";s:16:"description_side";}i:8;a:7:{s:4:"name";s:14:"default_parsed";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:"The parsed Comcode. (null: calculate)";s:11:"phpdoc_name";s:14:"default_parsed";}i:9;a:7:{s:4:"name";s:7:"scrolls";s:7:"default";s:13:"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 the field scrolls";s:11:"phpdoc_name";s:7:"scrolls";}i:10;a:7:{s:4:"name";s:4:"rows";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:"Number of rows for text input (null: default)";s:11:"phpdoc_name";s:4:"rows";}}s:4:"name";s:23:"form_input_text_comcode";s:11:"description";s:61:"Get the Tempcode for a Comcode-enabled text input (textarea).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:23:"form_input_huge_comcode";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:4:"rows";s:7:"default";i:20;s:11:"default_raw";s:2:"20";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"The number of rows to use";s:11:"phpdoc_name";s:4:"rows";}i:7;a:7:{s:4:"name";s:16:"description_side";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:49:"A secondary side description for this input field";s:11:"phpdoc_name";s:16:"description_side";}i:8;a:7:{s:4:"name";s:14:"default_parsed";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:"The parsed Comcode. (null: calculate)";s:11:"phpdoc_name";s:14:"default_parsed";}i:9;a:7:{s:4:"name";s:7:"scrolls";s:7:"default";s:13:"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 the field scrolls";s:11:"phpdoc_name";s:7:"scrolls";}i:10;a:7:{s:4:"name";s:17:"force_non_wysiwyg";s:7:"default";s:13:"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:"Force non-WYSIWYG and non default-Comcode parsing";s:11:"phpdoc_name";s:17:"force_non_wysiwyg";}}s:4:"name";s:23:"form_input_huge_comcode";s:11:"description";s:238:"Get the Tempcode for a huge comcode-enabled text input (textarea). These need extra space to fit. This function is also used as an automatic replacement for form_input_text_comcode if WYSIWYG is available (as WYSIWYG needs more space too)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_huge";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:4:"rows";s:7:"default";i:20;s:11:"default_raw";s:2:"20";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"The number of rows to use";s:11:"phpdoc_name";s:4:"rows";}i:7;a:7:{s:4:"name";s:16:"description_side";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:49:"A secondary side description for this input field";s:11:"phpdoc_name";s:16:"description_side";}i:8;a:7:{s:4:"name";s:7:"scrolls";s:7:"default";s:13:"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 the field scrolls";s:11:"phpdoc_name";s:7:"scrolls";}}s:4:"name";s:15:"form_input_huge";s:11:"description";s:50:"Get the Tempcode for a huge text input (textarea).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:19:"form_input_password";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;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:6:"string";s:11:"description";s:38:"The default value for this input field";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:19:"form_input_password";s:11:"description";s:38:"Get the Tempcode for a password input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_tick";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:6:"ticked";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether this is ticked by default";s:11:"phpdoc_name";s:6:"ticked";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;a:7:{s:4:"name";s:5:"value";s:7:"default";s:1:"1";s:11:"default_raw";s:3:"'1'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The value the checkbox passes when ticked";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:15:"form_input_tick";s:11:"description";s:38:"Get the Tempcode for a checkbox input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:24:"form_input_various_ticks";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"A list of tuples: (prettyname, name, value, description)";s:11:"phpdoc_name";s:7:"options";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:9:"_tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:9:"_tabindex";}i:3;a:7:{s:4:"name";s:12:"_pretty_name";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:67:"A human intelligible name for this input field (blank: use default)";s:11:"phpdoc_name";s:12:"_pretty_name";}i:4;a:7:{s:4:"name";s:12:"simple_style";s:7:"default";s:13:"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 place each tick on a new line";s:11:"phpdoc_name";s:12:"simple_style";}i:5;a:7:{s:4:"name";s:11:"custom_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:70:"Name for custom value to be entered to (null: no custom value allowed)";s:11:"phpdoc_name";s:11:"custom_name";}i:6;a:7:{s:4:"name";s:12:"custom_value";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:116:"Value for custom value, string (accept single value) or array (accept multiple values) (null: no custom value known)";s:11:"phpdoc_name";s:12:"custom_value";}}s:4:"name";s:24:"form_input_various_ticks";s:11:"description";s:42:"Get the Tempcode for a bank of tick boxes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:30:"form_input_upload_multi_source";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:9:"set_title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:9:"set_title";}i:1;a:5:{s:4:"name";s:15:"set_description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:15:"set_description";}i:2;a:5:{s:4:"name";s:6:"hidden";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:48:"A reference to where we're putting hidden fields";s:11:"phpdoc_name";s:6:"hidden";}i:3;a:7:{s:4:"name";s:8:"set_name";s:7:"default";s:5:"image";s:11:"default_raw";s:7:"'image'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:106:"The name which this input field is for (actually, this is a prefix put in front of different input types).";s:11:"phpdoc_name";s:8:"set_name";}i:4;a:7:{s:4:"name";s:16:"theme_image_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:91:"The directory of theme images to provide selection from (null: do not support theme images)";s:11:"phpdoc_name";s:16:"theme_image_type";}i:5;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:215:"Whether this is a required input field. Set this to false if you are using this field on an edit form and already have an uploaded file -- therefore you'd know no new file would mean not to replace the existing file";s:11:"phpdoc_name";s:8:"required";}i:6;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:209:"The default value for the field (null: none) (blank: none). Should only be passed if $required is false, because it creates a delete button for the existing file, implying that leaving it with no file is valid";s:11:"phpdoc_name";s:7:"default";}i:7;a:7:{s:4:"name";s:19:"support_syndication";s:7:"default";s:13:"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 syndicate the file off";s:11:"phpdoc_name";s:19:"support_syndication";}i:8;a:7:{s:4:"name";s:6:"filter";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:35:"File type filter (null: autodetect)";s:11:"phpdoc_name";s:6:"filter";}i:9;a:7:{s:4:"name";s:11:"images_only";s:7:"default";s:12:"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 accept images only";s:11:"phpdoc_name";s:11:"images_only";}}s:4:"name";s:30:"form_input_upload_multi_source";s:11:"description";s:172:"Get the Tempcode for a multi-set upload, allowing selection from multiple different sources.Mainly for images, used with post_param_image or post_param_multi_source_upload.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:17:"form_input_upload";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:215:"Whether this is a required input field. Set this to false if you are using this field on an edit form and already have an uploaded file -- therefore you'd know no new file would mean not to replace the existing file";s:11:"phpdoc_name";s:8:"required";}i:4;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:209:"The default value for the field (null: none) (blank: none). Should only be passed if $required is false, because it creates a delete button for the existing file, implying that leaving it with no file is valid";s:11:"phpdoc_name";s:7:"default";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:8:"plupload";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether plupload-style is preferred";s:11:"phpdoc_name";s:8:"plupload";}i:7;a:7:{s:4:"name";s:6:"filter";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:86:"File-type filter to limit to, comma-separated file extensions (might not be supported)";s:11:"phpdoc_name";s:6:"filter";}i:8;a:7:{s:4:"name";s:16:"syndication_json";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:71:"JSON structure of what uploader syndications there will be (null: none)";s:11:"phpdoc_name";s:16:"syndication_json";}}s:4:"name";s:17:"form_input_upload";s:11:"description";s:41:"Get the Tempcode for a file upload input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:23:"form_input_upload_multi";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:6:"string";s:11:"description";s:43:"The base name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;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:"?array";s:11:"description";s:44:"The default value for the field (null: none)";s:11:"phpdoc_name";s:7:"default";}i:6;a:7:{s:4:"name";s:8:"plupload";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether plupload-style is preferred";s:11:"phpdoc_name";s:8:"plupload";}i:7;a:7:{s:4:"name";s:6:"filter";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:86:"File-type filter to limit to, comma-separated file extensions (might not be supported)";s:11:"phpdoc_name";s:6:"filter";}i:8;a:7:{s:4:"name";s:16:"syndication_json";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:71:"JSON structure of what uploader syndications there will be (null: none)";s:11:"phpdoc_name";s:16:"syndication_json";}}s:4:"name";s:23:"form_input_upload_multi";s:11:"description";s:50:"Get the Tempcode for a multiple file upload input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_list";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"The list entries for our list; you compose these via attaching together form_input_list_entry calls";s:11:"phpdoc_name";s:7:"content";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;a:7:{s:4:"name";s:11:"inline_list";s:7:"default";s:13:"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 this is an inline displayed list as opposed to a dropdown";s:11:"phpdoc_name";s:11:"inline_list";}i:6;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether this is required";s:11:"phpdoc_name";s:8:"required";}i:7;a:7:{s:4:"name";s:6:"images";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:139:"List of theme images that $content is allowing selection of (so that we can show the images within the list, if JS is enabled) (null: none)";s:11:"phpdoc_name";s:6:"images";}i:8;a:7:{s:4:"name";s:4:"size";s:7:"default";i:5;s:11:"default_raw";s:1:"5";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:52:"How much space the list takes up (inline lists only)";s:11:"phpdoc_name";s:4:"size";}}s:4:"name";s:15:"form_input_list";s:11:"description";s:31:"Get the Tempcode for a listbox.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:20:"form_input_huge_list";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"The list entries for our list; you compose these via attaching together form_input_list_entry calls";s:11:"phpdoc_name";s:7:"content";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;a:7:{s:4:"name";s:11:"inline_list";s:7:"default";s:13:"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 this is an inline displayed list as opposed to a dropdown";s:11:"phpdoc_name";s:11:"inline_list";}i:6;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether this is required";s:11:"phpdoc_name";s:8:"required";}i:7;a:7:{s:4:"name";s:4:"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:28:"Size of list (null: default)";s:11:"phpdoc_name";s:4:"size";}}s:4:"name";s:20:"form_input_huge_list";s:11:"description";s:36:"Get the Tempcode for a huge listbox.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_multi_list";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"The list entries for our list; you compose these via attaching together form_input_list_entry calls";s:11:"phpdoc_name";s:7:"content";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:5;a:7:{s:4:"name";s:4:"size";s:7:"default";i:5;s:11:"default_raw";s:1:"5";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"How much space the list takes up";s:11:"phpdoc_name";s:4:"size";}i:6;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:37:"Whether at least one must be selected";s:11:"phpdoc_name";s:8:"required";}i:7;a:7:{s:4:"name";s:11:"custom_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:70:"Name for custom value to be entered to (null: no custom value allowed)";s:11:"phpdoc_name";s:11:"custom_name";}i:8;a:7:{s:4:"name";s:12:"custom_value";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:116:"Value for custom value, string (accept single value) or array (accept multiple values) (null: no custom value known)";s:11:"phpdoc_name";s:12:"custom_value";}}s:4:"name";s:21:"form_input_multi_list";s:11:"description";s:56:"Get the Tempcode for a listbox with multiple selections.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"form_input_combo";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Current selection";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:99:"The list entries for our list; you compose these via attaching together form_input_list_entry calls";s:11:"phpdoc_name";s:7:"options";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:6;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether this is required";s:11:"phpdoc_name";s:8:"required";}}s:4:"name";s:16:"form_input_combo";s:11:"description";s:98:"Get the Tempcode for a combo-box (listbox with free text input). Works best if HTML5 is available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:20:"form_input_tree_list";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"root_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:7:"root_id";}i:4;a:5:{s:4:"name";s:4:"hook";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The ajax tree-list hook that drives our data";s:11:"phpdoc_name";s:4:"hook";}i:5;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"A map of special options";s:11:"phpdoc_name";s:7:"options";}i:6;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:7;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:44:"The default value for the field (null: none)";s:11:"phpdoc_name";s:7:"default";}i:8;a:7:{s:4:"name";s:13:"use_server_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:70:"Whether to use the server-ID in the list instead of the ID in the list";s:11:"phpdoc_name";s:13:"use_server_id";}i:9;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:10;a:7:{s:4:"name";s:12:"multi_select";s:7:"default";s:13:"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 multiple selections are allowed";s:11:"phpdoc_name";s:12:"multi_select";}i:11;a:7:{s:4:"name";s:10:"nice_label";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:52:"Label for default value (null: just use the literal)";s:11:"phpdoc_name";s:10:"nice_label";}}s:4:"name";s:20:"form_input_tree_list";s:11:"description";s:50:"Get the Tempcode for an AJAX-powered tree listbox.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:22:"form_input_all_and_not";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:4:"base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The base name which this input field is for";s:11:"phpdoc_name";s:4:"base";}i:3;a:5:{s:4:"name";s:4:"list";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:36:"A list culmulation to select against";s:11:"phpdoc_name";s:4:"list";}i:4;a:8:{s:4:"name";s:4:"type";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:37:"The current type of partial selection";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:5:"+ - *";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:22:"form_input_all_and_not";s:11:"description";s:111:"Get the Tempcode for a complex input that chooses partials from a list ('all', 'all-except-these', or 'these').";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"form_input_radio";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:108:"The radio buttons for our radio group; you compose these via attaching together form_input_radio_entry calls";s:11:"phpdoc_name";s:7:"content";}i:4;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:37:"Whether a radio selection is required";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:16:"picture_contents";s:7:"default";s:13:"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 this is a picture-based radio list";s:11:"phpdoc_name";s:16:"picture_contents";}i:6;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:6:"string";s:11:"description";s:56:"Default value (only appropriate if has picture contents)";s:11:"phpdoc_name";s:13:"selected_path";}}s:4:"name";s:16:"form_input_radio";s:11:"description";s:35:"Get the Tempcode for a radio group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:22:"form_input_radio_entry";a:6:{s:8:"filename";s:26:"sources/form_templates.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:128:"The name of the radio button group this will be put in (i.e. the name the value presented here will be possibly matched against)";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The value for this entry";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:8:"selected";s:7:"default";s:13:"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 this entry is selected by default or not";s:11:"phpdoc_name";s:8:"selected";}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:69:"The text associated with this choice (blank: just use value for text)";s:11:"phpdoc_name";s:4:"text";}i:4;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}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:5:"mixed";s:11:"description";s:54:"An additional long description (blank: no description)";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:22:"form_input_radio_entry";s:11:"description";s:176:"Get the Tempcode for a radio input. (You would gather together the outputs of several of these functions, then put them in as the $content in a form_input_radio function call).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:22:"form_input_theme_image";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:3:"ids";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:89:"A list of image IDs (codes) we can choose from, probably found via get_all_image_ids_type";s:11:"phpdoc_name";s:3:"ids";}i:4;a:7:{s:4:"name";s:12:"selected_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:73:"The currently selected entry in our picture choosing, by URL (null: none)";s:11:"phpdoc_name";s:12:"selected_url";}i:5;a:7:{s:4:"name";s:13:"selected_code";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:74:"The currently selected entry in our picture choosing, by code (null: none)";s:11:"phpdoc_name";s:13:"selected_code";}i:6;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:7;a:7:{s:4:"name";s:10:"allow_none";s:7:"default";s:13:"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:"Whether to allow the selection of 'no' picture";s:11:"phpdoc_name";s:10:"allow_none";}i:8;a:7:{s:4:"name";s:2:"db";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:91:"The database connection to the Conversr install we are choosing images from (null: site db)";s:11:"phpdoc_name";s:2:"db";}i:9;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:34:"Theme to use (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}i:10;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:8:"?ID_TEXT";s:11:"description";s:40:"Language to use (null: current language)";s:11:"phpdoc_name";s:4:"lang";}i:11;a:7:{s:4:"name";s:6:"linear";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:95:"Whether choices are presented in a list (as opposed to a grid); useful when sizes are irregular";s:11:"phpdoc_name";s:6:"linear";}i:12;a:7:{s:4:"name";s:13:"direct_titles";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:81:"Whether to show direct codenames, rather than trying to prettify them into titles";s:11:"phpdoc_name";s:13:"direct_titles";}}s:4:"name";s:22:"form_input_theme_image";s:11:"description";s:118:"Get the Tempcode to choose a picture from the given list of images in the theme image system, with sub-categorisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:26:"form_input_date__scheduler";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:39:"The parameter name for this input field";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether this is a required field";s:11:"phpdoc_name";s:8:"required";}i:4;a:5:{s:4:"name";s:12:"null_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this field is empty by default";s:11:"phpdoc_name";s:12:"null_default";}i:5;a:5:{s:4:"name";s:7:"do_time";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to input time for this field also";s:11:"phpdoc_name";s:7:"do_time";}i:6;a:7:{s:4:"name";s:12:"default_time";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:116:"The default timestamp to use (either TIME or array of time components) (null: now) [ignored if $null_default is set]";s:11:"phpdoc_name";s:12:"default_time";}i:7;a:7:{s:4:"name";s:19:"total_years_to_show";s:7:"default";i:10;s:11:"default_raw";s:2:"10";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:123:"The number of years to allow selection from (all into the future, as this field type is not meant for inputting past dates)";s:11:"phpdoc_name";s:19:"total_years_to_show";}i:8;a:7:{s:4:"name";s:10:"year_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:40:"The year to start from (null: this year)";s:11:"phpdoc_name";s:10:"year_start";}i:9;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:26:"form_input_date__scheduler";s:11:"description";s:70:"Get the Tempcode for a date input, or if cron is not on, return blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"form_input_date";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:39:"The parameter name for this input field";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether this is not a required field";s:11:"phpdoc_name";s:8:"required";}i:4;a:5:{s:4:"name";s:12:"null_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this field is empty by default";s:11:"phpdoc_name";s:12:"null_default";}i:5;a:5:{s:4:"name";s:7:"do_time";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to input time for this field also";s:11:"phpdoc_name";s:7:"do_time";}i:6;a:7:{s:4:"name";s:12:"default_time";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:116:"The default timestamp to use (either TIME or array of time components) (null: now) [ignored if $null_default is set]";s:11:"phpdoc_name";s:12:"default_time";}i:7;a:7:{s:4:"name";s:19:"total_years_to_show";s:7:"default";i:10;s:11:"default_raw";s:2:"10";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:137:"The number of years to allow selection from (pass a negative number for selection of past years instead of future years) (null: no limit)";s:11:"phpdoc_name";s:19:"total_years_to_show";}i:8;a:7:{s:4:"name";s:10:"year_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:40:"The year to start from (null: this year)";s:11:"phpdoc_name";s:10:"year_start";}i:9;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:10;a:7:{s:4:"name";s:7:"do_date";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether to input date for this field (if false, will just do time)";s:11:"phpdoc_name";s:7:"do_date";}i:11;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:52:"Timezone to input in (null: current user's timezone)";s:11:"phpdoc_name";s:8:"timezone";}i:12;a:7:{s:4:"name";s:15:"handle_timezone";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Convert $default_time to $timezone";s:11:"phpdoc_name";s:15:"handle_timezone";}}s:4:"name";s:15:"form_input_date";s:11:"description";s:74:"Get the Tempcode for a date input. Use post_param_date to read the result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"_form_input_date";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:39:"The parameter name for this input field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether this is a required field";s:11:"phpdoc_name";s:8:"required";}i:2;a:5:{s:4:"name";s:12:"null_default";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this field is empty by default";s:11:"phpdoc_name";s:12:"null_default";}i:3;a:5:{s:4:"name";s:7:"do_time";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to input time for this field also";s:11:"phpdoc_name";s:7:"do_time";}i:4;a:7:{s:4:"name";s:12:"default_time";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:116:"The default timestamp to use (either TIME or array of time components) (null: now) [ignored if $null_default is set]";s:11:"phpdoc_name";s:12:"default_time";}i:5;a:7:{s:4:"name";s:19:"total_years_to_show";s:7:"default";i:10;s:11:"default_raw";s:2:"10";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:137:"The number of years to allow selection from (pass a negative number for selection of past years instead of future years) (null: no limit)";s:11:"phpdoc_name";s:19:"total_years_to_show";}i:6;a:7:{s:4:"name";s:10:"year_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:40:"The year to start from (null: this year)";s:11:"phpdoc_name";s:10:"year_start";}i:7;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:8;a:7:{s:4:"name";s:7:"do_date";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether to input date for this field (if false, will just do time)";s:11:"phpdoc_name";s:7:"do_date";}i:9;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:52:"Timezone to input in (null: current user's timezone)";s:11:"phpdoc_name";s:8:"timezone";}i:10;a:7:{s:4:"name";s:15:"handle_timezone";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Convert $default_time to $timezone";s:11:"phpdoc_name";s:15:"handle_timezone";}}s:4:"name";s:16:"_form_input_date";s:11:"description";s:39:"Get the Tempcode for a date input, raw.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:18:"form_input_integer";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:57:"The default value for this input field (null: no default)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:18:"form_input_integer";s:11:"description";s:43:"Get the Tempcode for an integer-only input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_dimensions";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:10:"name_width";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The name which this input field is for: width part";s:11:"phpdoc_name";s:10:"name_width";}i:3;a:5:{s:4:"name";s:11:"name_height";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:51:"The name which this input field is for: height part";s:11:"phpdoc_name";s:11:"name_height";}i:4;a:5:{s:4:"name";s:13:"default_width";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:69:"The default value for this input field: width part (null: no default)";s:11:"phpdoc_name";s:13:"default_width";}i:5;a:5:{s:4:"name";s:14:"default_height";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:70:"The default value for this input field: height part (null: no default)";s:11:"phpdoc_name";s:14:"default_height";}i:6;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:7;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:21:"form_input_dimensions";s:11:"description";s:43:"Get the Tempcode for an width/height input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:16:"form_input_float";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:46:"A human intelligible name for this input field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:34:"A description for this input field";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:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"?float";s:11:"description";s:57:"The default value for this input field (null: no default)";s:11:"phpdoc_name";s:7:"default";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether this is a required input field";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:8:"tabindex";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 tab index of the field (null: not specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:16:"form_input_float";s:11:"description";s:40:"Get the Tempcode for a float-only input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:27:"alternate_fields_set__start";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"set_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The codename for this field set";s:11:"phpdoc_name";s:8:"set_name";}}s:4:"name";s:27:"alternate_fields_set__start";s:11:"description";s:209:"Start off a field set.IMPORTANT: Note that this function uses global state -- any fields generated between alternate_fields_set__start and alternate_fields_set__end will be rendered using field set templating.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:44:"Tempcode to start attaching the field set to";}}s:25:"alternate_fields_set__end";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"set_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:85:"The codename for this field set (blank: just collect raw fields, no actual field set)";s:11:"phpdoc_name";s:8:"set_name";}i:1;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:42:"The human-readable name for this field set";s:11:"phpdoc_name";s:11:"pretty_name";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:49:"The human-readable description for this field set";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The field set Tempcode";s:11:"phpdoc_name";s:6:"fields";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether it is required that this field set be filled in";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:26:"existing_image_preview_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:84:"Image URL to show, of the existing selection for this field (null: N/A) (blank: N/A)";s:11:"phpdoc_name";s:26:"existing_image_preview_url";}i:6;a:7:{s:4:"name";s:3:"raw";s:7:"default";s:13:"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 just want the raw set contents, without any wrapper field row";s:11:"phpdoc_name";s:3:"raw";}}s:4:"name";s:25:"alternate_fields_set__end";s:11:"description";s:49:"Show a field set that has just been finished off.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The field set";}}s:19:"single_field__start";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"single_field__start";s:11:"description";s:94:"Start serving single field. This is used if you just need the raw widget, not the label (etc).";s:5:"flags";a:0:{}}s:17:"single_field__end";a:5:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"single_field__end";s:11:"description";s:26:"Stop serving single field.";s:5:"flags";a:0:{}}s:13:"form_input_na";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The human-readable name for this field";s:11:"phpdoc_name";s:11:"pretty_name";}i:1;a:7:{s:4:"name";s:8:"tabindex";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:36:"The tab index (null: none specified)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:13:"form_input_na";s:11:"description";s:44:"Used to create a null option for field sets.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The field";}}s:11:"_form_input";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"The codename for this field (blank: N/A)";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:11:"pretty_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The human-readable name for this field";s:11:"phpdoc_name";s:11:"pretty_name";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"The human-readable description for this field";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"The actual raw input field";s:11:"phpdoc_name";s:5:"input";}i:4;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether it is required that this field be filled in";s:11:"phpdoc_name";s:8:"required";}i:5;a:7:{s:4:"name";s:7:"comcode";s:7:"default";s:13:"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 this field may contain Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:6;a:7:{s:4:"name";s:8:"tabindex";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:36:"The tab index (null: none specified)";s:11:"phpdoc_name";s:8:"tabindex";}i:7;a:7:{s:4:"name";s:1:"w";s:7:"default";s:13:"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 it is a textarea field";s:11:"phpdoc_name";s:1:"w";}i:8;a:7:{s:4:"name";s:10:"skip_label";s:7:"default";s:13:"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 displaying a label for the field";s:11:"phpdoc_name";s:10:"skip_label";}i:9;a:7:{s:4:"name";s:16:"description_side";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:49:"A secondary side description for this input field";s:11:"phpdoc_name";s:16:"description_side";}i:10;a:7:{s:4:"name";s:13:"pattern_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:50:"Custom regex pattern validation error (null: none)";s:11:"phpdoc_name";s:13:"pattern_error";}}s:4:"name";s:11:"_form_input";s:11:"description";s:39:"Helper function to show an input field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The field";}}s:26:"handle_conflict_resolution";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:2:{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:49:"The ID we're editing (null: get from param, 'id')";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:10:"only_staff";s:7:"default";s:13:"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 care about staff conflicts";s:11:"phpdoc_name";s:10:"only_staff";}}s:4:"name";s:26:"handle_conflict_resolution";s:11:"description";s:54:"Look for editing conflicts, and setup editing pinging.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: warning details, ping url";}}s:23:"get_form_field_tabindex";a:6:{s:8:"filename";s:26:"sources/form_templates.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"tabindex";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:"Requested tab-index (null: no specific request)";s:11:"phpdoc_name";s:8:"tabindex";}}s:4:"name";s:23:"get_form_field_tabindex";s:11:"description";s:65:"Helper function for tab-index linearisation (serves as a filter).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"Used tab-index";}}s:16:"init__forum__cns";a:5:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__forum__cns";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"init__forum__ipb1";a:5:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__forum__ipb1";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:14:"_hash_encode64";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"To encode";s:11:"phpdoc_name";s:5:"input";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"How many chars to encode";s:11:"phpdoc_name";s:5:"count";}i:2;a:5:{s:4:"name";s:6:"itoa64";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:28:"Lookup table used internally";s:11:"phpdoc_name";s:6:"itoa64";}}s:4:"name";s:14:"_hash_encode64";s:11:"description";s:18:"phpBB: Encode hash";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The encoded output";}}s:19:"_hash_crypt_private";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:3:{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:9:"To encode";s:11:"phpdoc_name";s:8:"password";}i:1;a:5:{s:4:"name";s:7:"setting";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Encode settings in special format";s:11:"phpdoc_name";s:7:"setting";}i:2;a:5:{s:4:"name";s:6:"itoa64";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:28:"Lookup table used internally";s:11:"phpdoc_name";s:6:"itoa64";}}s:4:"name";s:19:"_hash_crypt_private";s:11:"description";s:99:"phpBB: The crypt function/replacementGet 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:7:"~string";s:11:"description";s:33:"The encoded output (false: error)";}}s:16:"init__forum_stub";a:5:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__forum_stub";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"init__galleries";a:5:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__galleries";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"render_image_box";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:6:{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:13:"The image row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The zone the galleries module is in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_image_box";s:11:"description";s:20:"Render an image box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The rendered box";}}s:16:"render_video_box";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:6:{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:13:"The video row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The zone the galleries module is in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:16:"render_video_box";s:11:"description";s:19:"Render a video box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The rendered box";}}s:18:"render_gallery_box";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:10:{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:31:"The database row of the gallery";s:11:"phpdoc_name";s:5:"myrow";}i:1;a:7:{s:4:"name";s:4:"root";s:7:"default";s:4:"root";s:11:"default_raw";s:6:"'root'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The virtual root of the gallery";s:11:"phpdoc_name";s:4:"root";}i:2;a:7:{s:4:"name";s:32:"show_member_stats_if_appropriate";s:7:"default";s:13:"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 show member stats if it is a member owned gallery";s:11:"phpdoc_name";s:32:"show_member_stats_if_appropriate";}i:3;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"The zone that the gallery module we are linking to is in";s:11:"phpdoc_name";s:4:"zone";}i:4;a:7:{s:4:"name";s:13:"quit_if_empty";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to not show anything if the gallery is empty";s:11:"phpdoc_name";s:13:"quit_if_empty";}i:5;a:7:{s:4:"name";s:7:"preview";s:7:"default";s:13:"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 only to show 'preview' details";s:11:"phpdoc_name";s:7:"preview";}i:6;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:7;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:8;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:9;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:18:"render_gallery_box";s:11:"description";s:36:"Get preview detailing for a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The preview";}}s:23:"get_default_gallery_max";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_default_gallery_max";s:11:"description";s:60:"Find the default number of images per page in the galleries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Images per page";}}s:19:"gallery_has_content";a:6:{s:8:"filename";s:21:"sources/galleries.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:7:"ID_TEXT";s:11:"description";s:23:"The name of the gallery";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:19:"gallery_has_content";s:11:"description";s:81:"Find whether a certain gallery has any content (images, videos, or subgalleries).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"The answer";}}s:31:"get_member_id_from_gallery_name";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:3:{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:23:"The name of the gallery";s:11:"phpdoc_name";s:12:"gallery_name";}i:1;a:7:{s:4:"name";s:3:"row";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:30:"Gallery row (null: look it up)";s:11:"phpdoc_name";s:3:"row";}i:2;a:7:{s:4:"name";s:24:"only_if_personal_gallery";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Only non-null if it is a personal gallery";s:11:"phpdoc_name";s:24:"only_if_personal_gallery";}}s:4:"name";s:31:"get_member_id_from_gallery_name";s:11:"description";s:28:"Find the owner of a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:59:"The owner of the gallery (null: not a member owned gallery)";}}s:18:"show_video_details";a:6:{s:8:"filename";s:21:"sources/galleries.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:29:"The database row of the video";s:11:"phpdoc_name";s:5:"myrow";}}s:4:"name";s:18:"show_video_details";s:11:"description";s:34:"Get preview detailing for a video.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The preview";}}s:29:"get_recursive_gallery_details";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The name of the gallery";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:11:"test_videos";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:87:"Whether to test for videos when making counts (ignore this parameter - used internally)";s:11:"phpdoc_name";s:11:"test_videos";}i:2;a:7:{s:4:"name";s:11:"test_images";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:87:"Whether to test for images when making counts (ignore this parameter - used internally)";s:11:"phpdoc_name";s:11:"test_images";}}s:4:"name";s:29:"get_recursive_gallery_details";s:11:"description";s:41:"Get details of the contents of a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A triplet: (num children, num images, num videos)";}}s:23:"only_download_galleries";a:6:{s:8:"filename";s:21:"sources/galleries.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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:23:"only_download_galleries";s:11:"description";s:67:"See whether a gallery is a download gallery (designed as a filter).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the gallery is a download gallery";}}s:27:"only_conventional_galleries";a:6:{s:8:"filename";s:21:"sources/galleries.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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:27:"only_conventional_galleries";s:11:"description";s:71:"See whether a gallery is NOT a download gallery (designed as a filter).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether the gallery is NOT a download gallery";}}s:30:"only_galleries_accepting_media";a:6:{s:8:"filename";s:21:"sources/galleries.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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:30:"only_galleries_accepting_media";s:11:"description";s:64:"See whether a gallery accepts some media (designed as a filter).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the gallery accepts some media";}}s:27:"only_member_galleries_of_id";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:3:{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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:46:"Member we are filtering for (null: not needed)";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:11:"child_count";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:39:"The number of children for this gallery";s:11:"phpdoc_name";s:11:"child_count";}}s:4:"name";s:27:"only_member_galleries_of_id";s:11:"description";s:140:"See whether the GET parameter 'id' is of a gallery that is a member gallery of the given member gallery container, or just a normal gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"The answer";}}s:34:"create_selection_list_gallery_tree";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:10:{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:60:"The gallery to select by default (null: no specific default)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:6:"filter";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:58:"A function name to filter galleries with (null: no filter)";s:11:"phpdoc_name";s:6:"filter";}i:2;a:7:{s:4:"name";s:18:"must_accept_images";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether displayed galleries must support images";s:11:"phpdoc_name";s:18:"must_accept_images";}i:3;a:7:{s:4:"name";s:18:"must_accept_videos";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether displayed galleries must support videos";s:11:"phpdoc_name";s:18:"must_accept_videos";}i:4;a:7:{s:4:"name";s:6:"purity";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to NOT show member galleries that do not exist yet";s:11:"phpdoc_name";s:6:"purity";}i:5;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to get a list of child galleries (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:6;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:46:"Member we are filtering for (null: not needed)";s:11:"phpdoc_name";s:9:"member_id";}i:7;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:8;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}i:9;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:34:"create_selection_list_gallery_tree";s:11:"description";s:110:"Gets a gallery selection tree list, extending deeper from the given gallery, showing all sub(sub...)galleries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The tree list";}}s:16:"get_gallery_tree";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:13:{i:0;a:7:{s:4:"name";s:7:"gallery";s:7:"default";s:4:"root";s:11:"default_raw";s:6:"'root'";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:62:"The gallery we are getting the tree starting from (null: root)";s:11:"phpdoc_name";s:7:"gallery";}i:1;a:7:{s:4:"name";s:11:"breadcrumbs";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:53:"The parent breadcrumbs at this point of the recursion";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:2;a:7:{s:4:"name";s:12:"gallery_info";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:68:"The database row for the $gallery gallery (null: get it from the DB)";s:11:"phpdoc_name";s:12:"gallery_info";}i:3;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 include video/image statistics in the returned tree";s:11:"phpdoc_name";s:8:"do_stats";}i:4;a:7:{s:4:"name";s:6:"filter";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:81:"A function name to filter galleries with OR a Selectcode string (null: no filter)";s:11:"phpdoc_name";s:6:"filter";}i:5;a:7:{s:4:"name";s:18:"must_accept_images";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether displayed galleries must support images";s:11:"phpdoc_name";s:18:"must_accept_images";}i:6;a:7:{s:4:"name";s:18:"must_accept_videos";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether displayed galleries must support videos";s:11:"phpdoc_name";s:18:"must_accept_videos";}i:7;a:7:{s:4:"name";s:6:"purity";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to NOT show member galleries that do not exist yet";s:11:"phpdoc_name";s:6:"purity";}i:8;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to get a list of child galleries (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:9;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:10;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:46:"Member we are filtering for (null: not needed)";s:11:"phpdoc_name";s:9:"member_id";}i:11;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:12;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:16:"get_gallery_tree";s:11:"description";s:110:"Gets a gallery selection tree list, extending deeper from the given gallery, showing all sub(sub...)galleries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:144:"The tree structure, or if $use_compound_list, the tree structure built with pairs containing the compound list in addition to the child branches";}}s:21:"can_submit_to_gallery";a:6:{s:8:"filename";s:21:"sources/galleries.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:7:"ID_TEXT";s:11:"description";s:16:"The gallery name";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:12:"gallery_info";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:35:"Gallery database row (null: lookup)";s:11:"phpdoc_name";s:12:"gallery_info";}}s:4:"name";s:21:"can_submit_to_gallery";s:11:"description";s:190:"See whether the current member can submit to the named *member* gallery. Note - this function assumes that members have general submit permission, and does not check for gallery read access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:94:"The owner of the gallery (false: we aren't allowed to submit to it) (-2: not a member gallery)";}}s:19:"gallery_breadcrumbs";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"gallery";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The gallery name";s:11:"phpdoc_name";s:7:"gallery";}i:1;a:7:{s:4:"name";s:4:"root";s:7:"default";s:4:"root";s:11:"default_raw";s:6:"'root'";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:29:"The virtual root (null: none)";s:11:"phpdoc_name";s:4:"root";}i:2;a:7:{s:4:"name";s:18:"no_link_for_me_sir";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:105:"Whether not to put a link at this point in the breadcrumbs (usually, because the viewer is already at it)";s:11:"phpdoc_name";s:18:"no_link_for_me_sir";}i:3;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:48:"The zone that the linked to gallery module is in";s:11:"phpdoc_name";s:4:"zone";}i:4;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}}s:4:"name";s:19:"gallery_breadcrumbs";s:11:"description";s:71:"Get a route from a known gallery back to the declared root of the tree.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The navigation element";}}s:42:"create_selection_list_gallery_content_tree";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:5:{i:0;a:6:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The table we are working with";s:11:"phpdoc_name";s:5:"table";s:3:"set";s:13:"images videos";}i:1;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:50:"The currently selected entry (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:2;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:10:"?AUTO_LINK";s:11:"description";s:66:"Only show images/videos submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}i:3;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to get a list of child galleries (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:4;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:42:"create_selection_list_gallery_content_tree";s:11:"description";s:78:"Get a nice, formatted XHTML list of gallery entries, in gallery tree structure";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The list of entries";}}s:24:"get_gallery_content_tree";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:8:{i:0;a:6:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The table we are working with";s:11:"phpdoc_name";s:5:"table";s:3:"set";s:13:"images videos";}i:1;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:10:"?AUTO_LINK";s:11:"description";s:66:"Only show images/videos submitted by this member (null: no filter)";s:11:"phpdoc_name";s:9:"submitter";}i:2;a:7:{s:4:"name";s:7:"gallery";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:64:"The gallery being at the root of our recursion (null: true root)";s:11:"phpdoc_name";s:7:"gallery";}i:3;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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:4;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:8:"?ID_TEXT";s:11:"description";s:180:"The name of the $gallery we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:5:"title";}i:5;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}i:6;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to get a list of child galleries (not just direct ones, recursively), instead of just IDs";s:11:"phpdoc_name";s:17:"use_compound_list";}i:7;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}}s:4:"name";s:24:"get_gallery_content_tree";s:11:"description";s:141:"Get a list of maps containing all the gallery entries, and path information, under the specified gallery - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:301:"A list of maps for all galleries. Each map entry containins the fields 'id' (gallery ID) and 'breadcrumbs' (path to the category, including the categories own title), and more. Or if $use_compound_list, the tree structure built with pairs containing the compound list in addition to the child branches";}}s:24:"show_gallery_video_media";a:6:{s:8:"filename";s:21:"sources/galleries.php";s:10:"parameters";a:6:{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:12:"URL to media";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:16:"URL to thumbnail";s:11:"phpdoc_name";s:9:"thumb_url";}i:2;a:5:{s:4:"name";s:5:"width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Width";s:11:"phpdoc_name";s:5:"width";}i:3;a:5:{s:4:"name";s:6:"height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Height";s:11:"phpdoc_name";s:6:"height";}i:4;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Length";s:11:"phpdoc_name";s:6:"length";}i:5;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";}}s:4:"name";s:24:"show_gallery_video_media";s:11:"description";s:144:"Show a gallery media entry (not an image, something more complex); all these will render under the 'video' type even if they're technically not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Displayed media";}}s:17:"get_video_details";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"file_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:26:"The path to the video file";s:11:"phpdoc_name";s:9:"file_path";}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:94:"The original filename of the video file (so we can find the file type from the file extension)";s:11:"phpdoc_name";s:8:"filename";}i:2;a:7:{s:4:"name";s:12:"delay_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:169:"Whether to skip over errored files instead of dying. We don't currently make use of this as our readers aren't sophisticard enough to properly spot erroneous situations.";s:11:"phpdoc_name";s:12:"delay_errors";}}s:4:"name";s:17:"get_video_details";s:11:"description";s:111:"Get width,height,length of a video file. Note: unfortunately mpeg is not possible without huge amounts of code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:113:"The triplet of width/height/length (possibly containing nulls for when we can't detect properties) (false: error)";}}s:21:"read_intel_endian_int";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"buffer";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The binary chunk";s:11:"phpdoc_name";s:6:"buffer";}}s:4:"name";s:21:"read_intel_endian_int";s:11:"description";s:81:"Read an integer from the given binary chunk. The integer is in intel endian form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:11:"The integer";}}s:23:"read_network_endian_int";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"buffer";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The binary chunk";s:11:"phpdoc_name";s:6:"buffer";}}s:4:"name";s:23:"read_network_endian_int";s:11:"description";s:83:"Read an integer from the given binary chunk. The integer is in network endian form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:11:"The integer";}}s:16:"_get_wmv_details";a:6:{s:8:"filename";s:22:"sources/galleries2.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:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:16:"_get_wmv_details";s:11:"description";s:45:"Get width,height,length of a .wmv video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"The triplet (possibly containing nulls for when we can't detect properties)";}}s:30:"_get_wmv_details_do_chunk_list";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}i:1;a:7:{s:4:"name";s:12:"chunk_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:61:"The length of the current chunk list (null: covers full file)";s:11:"phpdoc_name";s:12:"chunk_length";}}s:4:"name";s:30:"_get_wmv_details_do_chunk_list";s:11:"description";s:78:"Get chunk-bytes-read,width,height,length of a chunk list of a .wmv video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:89:"The quartet (possibly containing nulls for when we can't detect properties) (null: error)";}}s:16:"_get_avi_details";a:6:{s:8:"filename";s:22:"sources/galleries2.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:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:16:"_get_avi_details";s:11:"description";s:45:"Get width,height,length of a .avi video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"The triplet (possibly containing nulls for when we can't detect properties)";}}s:16:"_get_ram_details";a:6:{s:8:"filename";s:22:"sources/galleries2.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:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:16:"_get_ram_details";s:11:"description";s:49:"Get width,height,length of a .rm/.ram video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:89:"The triplet (possibly containing nulls for when we can't detect properties) (null: error)";}}s:16:"_get_mov_details";a:6:{s:8:"filename";s:22:"sources/galleries2.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:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:16:"_get_mov_details";s:11:"description";s:49:"Get width,height,length of a .mov/.qt video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:89:"The triplet (possibly containing nulls for when we can't detect properties) (null: error)";}}s:29:"_get_mov_details_do_atom_list";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:15:"The file handle";s:11:"phpdoc_name";s:4:"file";}i:1;a:7:{s:4:"name";s:9:"atom_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:60:"The length of the current atom list (null: covers full file)";s:11:"phpdoc_name";s:9:"atom_size";}}s:4:"name";s:29:"_get_mov_details_do_atom_list";s:11:"description";s:81:"Get chunk-bytes-read,width,height,length of a atom list of a .mov/.qt video file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"The quartet (possibly containing nulls for when we can't detect properties)";}}s:9:"add_image";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:11:"Image title";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:2;a:5:{s:4:"name";s:11:"description";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:3;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the actual image";s:11:"phpdoc_name";s:3:"url";}i:4;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the thumbnail of the actual image";s:11:"phpdoc_name";s:9:"thumb_url";}i:5;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether the image has been validated for display on the site";s:11:"phpdoc_name";s:9:"validated";}i:6;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the image may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:7;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the image may be commented upon";s:11:"phpdoc_name";s:14:"allow_comments";}i:8;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the image may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:9;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"Hidden notes associated with the image";s:11:"phpdoc_name";s:5:"notes";}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:36:"The submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:11;a:7:{s:4:"name";s:8:"add_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:30:"The time of adding (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:12;a:7:{s:4:"name";s:9:"edit_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:33:"The time of editing (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:13;a:7:{s:4:"name";s:5:"views";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:"The number of views";s:11:"phpdoc_name";s:5:"views";}i:14;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:15;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:16;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:17;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:9:"add_image";s:11:"description";s:36:"Add an image to a specified gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:23:"The ID of the new entry";}}s:10:"edit_image";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:19:{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:27:"The ID of the image to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:11:"Image title";s:11:"phpdoc_name";s:5:"title";}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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:3;a:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the actual image";s:11:"phpdoc_name";s:3:"url";}i:5;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the thumbnail of the actual image";s:11:"phpdoc_name";s:9:"thumb_url";}i:6;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether the image has been validated for display on the site";s:11:"phpdoc_name";s:9:"validated";}i:7;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the image may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:8;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the image may be commented upon";s:11:"phpdoc_name";s:14:"allow_comments";}i:9;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the image may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:10;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"Hidden notes associated with the image";s:11:"phpdoc_name";s:5:"notes";}i:11;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:12;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:13;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:14;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:15;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:16;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:17;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:18;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:10:"edit_image";s:11:"description";s:37:"Edit an image in a specified gallery.";s:5:"flags";a:0:{}}s:12:"delete_image";a:5:{s:8:"filename";s:22:"sources/galleries2.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:"The ID of the image";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"delete_full";s:7:"default";s:12:"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 delete the actual file also";s:11:"phpdoc_name";s:11:"delete_full";}}s:4:"name";s:12:"delete_image";s:11:"description";s:76:"Delete a specified image from the database, and delete the file if possible.";s:5:"flags";a:0:{}}s:18:"create_video_thumb";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"src_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:42:"Video to get thumbail from (must be local)";s:11:"phpdoc_name";s:7:"src_url";}i:1;a:7:{s:4:"name";s:20:"expected_output_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:45:"Where to save to (null: decide for ourselves)";s:11:"phpdoc_name";s:20:"expected_output_path";}}s:4:"name";s:18:"create_video_thumb";s:11:"description";s:25:"Create a video thumbnail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:92:"Thumbnail, only valid if expected_output_path was passed as null (blank: could not generate)";}}s:9:"add_video";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:21:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:11:"Video title";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:2;a:5:{s:4:"name";s:11:"description";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:3;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the actual video";s:11:"phpdoc_name";s:3:"url";}i:4;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the thumbnail of the actual video";s:11:"phpdoc_name";s:9:"thumb_url";}i:5;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether the video has been validated for display on the site";s:11:"phpdoc_name";s:9:"validated";}i:6;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the video may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:7;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the video may be commented upon";s:11:"phpdoc_name";s:14:"allow_comments";}i:8;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the video may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:9;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"Hidden notes associated with the video";s:11:"phpdoc_name";s:5:"notes";}i:10;a:5:{s:4:"name";s:12:"video_length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The length of the video";s:11:"phpdoc_name";s:12:"video_length";}i:11;a:5:{s:4:"name";s:11:"video_width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"The width of the video";s:11:"phpdoc_name";s:11:"video_width";}i:12;a:5:{s:4:"name";s:12:"video_height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The height of the video";s:11:"phpdoc_name";s:12:"video_height";}i:13;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:36:"The submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:14;a:7:{s:4:"name";s:8:"add_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:30:"The time of adding (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:15;a:7:{s:4:"name";s:9:"edit_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:33:"The time of editing (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:16;a:7:{s:4:"name";s:5:"views";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:"The number of views";s:11:"phpdoc_name";s:5:"views";}i:17;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:18;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:19;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:20;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:9:"add_video";s:11:"description";s:35:"Add a video to a specified gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:23:"The ID of the new entry";}}s:10:"edit_video";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:22:{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:27:"The ID of the entry to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:11:"Video title";s:11:"phpdoc_name";s:5:"title";}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:16:"The gallery name";s:11:"phpdoc_name";s:3:"cat";}i:3;a:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the actual video";s:11:"phpdoc_name";s:3:"url";}i:5;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the thumbnail of the actual video";s:11:"phpdoc_name";s:9:"thumb_url";}i:6;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether the video has been validated for display on the site";s:11:"phpdoc_name";s:9:"validated";}i:7;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the video may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:8;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"Whether the video may be commented upon";s:11:"phpdoc_name";s:14:"allow_comments";}i:9;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the video may be trackbacked";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:10;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"Hidden notes associated with the video";s:11:"phpdoc_name";s:5:"notes";}i:11;a:5:{s:4:"name";s:12:"video_length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The length of the video";s:11:"phpdoc_name";s:12:"video_length";}i:12;a:5:{s:4:"name";s:11:"video_width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"The width of the video";s:11:"phpdoc_name";s:11:"video_width";}i:13;a:5:{s:4:"name";s:12:"video_height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The height of the video";s:11:"phpdoc_name";s:12:"video_height";}i:14;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:15;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:16;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:17;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:18;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:19;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:20;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:21;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:10:"edit_video";s:11:"description";s:36:"Edit a video in a specified gallery.";s:5:"flags";a:0:{}}s:12:"delete_video";a:5:{s:8:"filename";s:22:"sources/galleries2.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:29:"The ID of the entry to delete";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"delete_full";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:70:"Whether to delete the actual video file from disk as well as the entry";s:11:"phpdoc_name";s:11:"delete_full";}}s:4:"name";s:12:"delete_video";s:11:"description";s:38:"Delete a video in a specified gallery.";s:5:"flags";a:0:{}}s:23:"watermark_gallery_image";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"gallery";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The name of the gallery for the image";s:11:"phpdoc_name";s:7:"gallery";}i:1;a:5:{s:4:"name";s:9:"file_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:26:"The path to the image file";s:11:"phpdoc_name";s:9:"file_path";}i:2;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"The original file name of the image";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:23:"watermark_gallery_image";s:11:"description";s:60:"Watermarks an image with the appropriate gallery watermarks.";s:5:"flags";a:0:{}}s:17:"_watermark_corner";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:36:"The image resource being watermarked";s:11:"phpdoc_name";s:6:"source";}i:1;a:5:{s:4:"name";s:13:"watermark_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:37:"The (local) URL to the watermark file";s:11:"phpdoc_name";s:13:"watermark_url";}i:2;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:53:"Whether a right hand side corner is being watermarked";s:11:"phpdoc_name";s:1:"x";}i:3;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:49:"Whether a bottom edge corner is being watermarked";s:11:"phpdoc_name";s:1:"y";}}s:4:"name";s:17:"_watermark_corner";s:11:"description";s:33:"Watermark the corner of an image.";s:5:"flags";a:0:{}}s:35:"constrain_gallery_image_to_max_size";a:5:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"file_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:26:"The path to the image file";s:11:"phpdoc_name";s:9:"file_path";}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:34:"The original filename of the image";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:9:"box_width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"The box width";s:11:"phpdoc_name";s:9:"box_width";}}s:4:"name";s:35:"constrain_gallery_image_to_max_size";s:11:"description";s:75:"Make sure the detailed image file is not bigger than the defined box width.";s:5:"flags";a:0:{}}s:11:"add_gallery";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:22:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The gallery codename";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"fullname";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:5:{s:4:"name";s:11:"description";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:5:{s:4:"name";s:5:"notes";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:5:{s:4:"name";s:9:"parent_id";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";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 images may be put in this gallery";s:11:"phpdoc_name";s:13:"accept_images";}i:6;a:7:{s:4:"name";s:13:"accept_videos";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 videos may be put in this gallery";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";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 the gallery uses the flow mode interface";s:11:"phpdoc_name";s:19:"flow_mode_interface";}i:9;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:53:"The representative image of the gallery (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:10;a:7:{s:4:"name";s:18:"watermark_top_left";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:23:"Watermark (blank: 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";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"Watermark (blank: 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";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"Watermark (blank: 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";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:22:"watermark_bottom_right";}i:14;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:6:"BINARY";s:11:"description";s:26:"Whether rating are allowed";s:11:"phpdoc_name";s:12:"allow_rating";}i:15;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:6:"BINARY";s:11:"description";s:28:"Whether comments are allowed";s:11:"phpdoc_name";s:14:"allow_comments";}i:16;a:7:{s:4:"name";s:17:"skip_exists_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:79:"Whether to skip the check for whether the gallery exists (useful for importers)";s:11:"phpdoc_name";s:17:"skip_exists_check";}i:17;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_date";}i:18;a:7:{s:4:"name";s:7:"g_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:32:"The gallery owner (null: nobody)";s:11:"phpdoc_name";s:7:"g_owner";}i:19;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:20;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:21;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:11:"add_gallery";s:11:"description";s:44:"Add a gallery with the specified parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:12:"edit_gallery";a:6:{s:8:"filename";s:22:"sources/galleries2.php";s:10:"parameters";a:23:{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:50:"The old gallery codename (in case we are renaming)";s:11:"phpdoc_name";s:8:"old_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:52:"The gallery codename (maybe the same as the old one)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"fullname";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:3;a:5:{s:4:"name";s:11:"description";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:4;a:5:{s:4:"name";s:5:"notes";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:5;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:8:"?ID_TEXT";s:11:"description";s:36:"The parent gallery (null: no parent)";s:11:"phpdoc_name";s:9:"parent_id";}i:6;a:7:{s:4:"name";s:13:"accept_images";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 images may be put in this gallery";s:11:"phpdoc_name";s:13:"accept_images";}i:7;a:7:{s:4:"name";s:13:"accept_videos";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 videos may be put in this gallery";s:11:"phpdoc_name";s:13:"accept_videos";}i:8;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:9;a:7:{s:4:"name";s:19:"flow_mode_interface";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 the gallery uses the flow mode interface";s:11:"phpdoc_name";s:19:"flow_mode_interface";}i:10;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:53:"The representative image of the gallery (blank: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:11;a:7:{s:4:"name";s:18:"watermark_top_left";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:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:18:"watermark_top_left";}i:12;a:7:{s:4:"name";s:19:"watermark_top_right";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:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:19:"watermark_top_right";}i:13;a:7:{s:4:"name";s:21:"watermark_bottom_left";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:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:21:"watermark_bottom_left";}i:14;a:7:{s:4:"name";s:22:"watermark_bottom_right";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:23:"Watermark (blank: none)";s:11:"phpdoc_name";s:22:"watermark_bottom_right";}i:15;a:7:{s:4:"name";s:13:"meta_keywords";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:51:"Meta keywords for this resource (null: do not edit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:16;a:7:{s:4:"name";s:16:"meta_description";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:54:"Meta description for this resource (null: do not edit)";s:11:"phpdoc_name";s:16:"meta_description";}i:17;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:6:"BINARY";s:11:"description";s:26:"Whether rating are allowed";s:11:"phpdoc_name";s:12:"allow_rating";}i:18;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:6:"BINARY";s:11:"description";s:28:"Whether comments are allowed";s:11:"phpdoc_name";s:14:"allow_comments";}i:19;a:7:{s:4:"name";s:7:"g_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:32:"The gallery owner (null: nobody)";s:11:"phpdoc_name";s:7:"g_owner";}i:20;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:21;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}i:22;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}}s:4:"name";s:12:"edit_gallery";s:11:"description";s:15:"Edit a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:14:"delete_gallery";a:5:{s:8:"filename";s:22:"sources/galleries2.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:7:"ID_TEXT";s:11:"description";s:20:"The gallery codename";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:14:"delete_gallery";s:11:"description";s:27:"Delete a specified gallery.";s:5:"flags";a:0:{}}s:29:"make_member_gallery_if_needed";a:5:{s:8:"filename";s:22:"sources/galleries2.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:20:"The gallery codename";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:29:"make_member_gallery_if_needed";s:11:"description";s:213:"The UI shows member galleries that do not exist. If it is a member gallery, and it does not exist, it'll need making, before something can be added. This gallery performs the check and makes the gallery if needed.";s:5:"flags";a:0:{}}s:27:"get_potential_gallery_title";a:6:{s:8:"filename";s:22:"sources/galleries2.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:20:"The gallery codename";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:27:"get_potential_gallery_title";s:11:"description";s:67:"Get the potential title of a gallery - real name if gallery exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:66:"The gallery title (null: does not exist and won't be auto-created)";}}s:23:"download_gallery_script";a:5:{s:8:"filename";s:22:"sources/galleries3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"download_gallery_script";s:11:"description";s:73:"Script handler for downloading a gallery, as specified by GET parameters.";s:5:"flags";a:0:{}}s:12:"require_code";a:5:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:149:"The codename for the source module to load (or a full relative path, ending with .php; if custom checking is needed, this must be the custom version)";s:11:"phpdoc_name";s:8:"codename";}i:1;a:7:{s:4:"name";s:10:"light_exit";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to cleanly fail when a source file is missing";s:11:"phpdoc_name";s:10:"light_exit";}}s:4:"name";s:12:"require_code";s:11:"description";s:335:"This function is a very important one when coding. It allows you to include a source code file (from root/sources/ or root/sources_custom/) through the proper channels.You should remember this function, and not substitute anything else for it, as that will likely make your code unstable.It is key to source code modularity in Composr.";s:5:"flags";a:0:{}}s:24:"require_code_no_override";a:5:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:42:"The codename for the source module to load";s:11:"phpdoc_name";s:8:"codename";}}s:4:"name";s:24:"require_code_no_override";s:11:"description";s:62:"Require code, but without looking for sources_custom overrides";s:5:"flags";a:0:{}}s:17:"appengine_is_live";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"appengine_is_live";s:11:"description";s:63:"Find if we are running on a live Google App Engine application.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:56:"If it is running as a live Google App Engine application";}}s:11:"tacit_https";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"tacit_https";s:11:"description";s:31:"Are we currently running HTTPS.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:9:"If we are";}}s:14:"object_factory";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"class";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The class name";s:11:"phpdoc_name";s:5:"class";}i:1;a:7:{s:4:"name";s:10:"failure_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:48:"Whether to return null if there is no such class";s:11:"phpdoc_name";s:10:"failure_ok";}}s:4:"name";s:14:"object_factory";s:11:"description";s:33:"Make an object of the given class";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:32:"The object (null: no such class)";}}s:20:"php_function_allowed";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Function name.";s:11:"phpdoc_name";s:8:"function";}}s:4:"name";s:20:"php_function_allowed";s:11:"description";s:223:"Find whether a particular PHP function is blocked.Note that you still need to put "@" before set_time_limit, as some web host(s) have their own non-detectable block:"Cannot set max execution time limit due to system policy"";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:12:"safe_ini_set";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Config option.";s:11:"phpdoc_name";s:3:"var";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"New value of option.";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:12:"safe_ini_set";s:11:"description";s:75:"Sets the value of a configuration option, if the PHP environment allows it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:35:"Old value of option (false: error).";}}s:13:"get_file_base";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_base";s:11:"description";s:50:"Get the file base for your installation of Composr";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:39:"The file base, without a trailing slash";}}s:20:"get_custom_file_base";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_custom_file_base";s:11:"description";s:128:"Get the file base for your installation of Composr. For a shared install, or a GAE-install, this is different to the file-base.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:39:"The file base, without a trailing slash";}}s:14:"filter_naughty";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{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:14:"String to test";s:11:"phpdoc_name";s:2:"in";}i:1;a:7:{s:4:"name";s:4:"preg";s:7:"default";s:13:"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 just filter out the naughtyness";s:11:"phpdoc_name";s:4:"preg";}}s:4:"name";s:14:"filter_naughty";s:11:"description";s:395:"Get the parameter put into it, with no changes. If it detects that the parameter is naughty (i.e malicious, and probably from a hacker), it will log the hack-attack and output an error message.This function is designed to be called on parameters that will be embedded in a path, and defines malicious as trying to reach a parent directory using '..'. All file paths in Composr should be absolute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Same as input string";}}s:20:"filter_naughty_harsh";a:6:{s:8:"filename";s:18:"sources/global.php";s:10:"parameters";a:2:{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:14:"String to test";s:11:"phpdoc_name";s:2:"in";}i:1;a:7:{s:4:"name";s:4:"preg";s:7:"default";s:13:"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 just filter out the naughtyness";s:11:"phpdoc_name";s:4:"preg";}}s:4:"name";s:20:"filter_naughty_harsh";s:11:"description";s:167:"This function is similar to filter_naughty, except it requires the parameter to be strictly alphanumeric. It is intended for use on text that will be put into an eval.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"Same as input string";}}s:12:"hhvm_include";a:6:{s:8:"filename";s:18:"sources/global.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:12:"Include path";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:12:"hhvm_include";s:11:"description";s:100:"Include some PHP code, compiling to HHVM's hack, for type strictness (uses Composr phpdoc comments).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:36:"Code return code (null: actual null)";}}s:13:"init__global2";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__global2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"fixup_bad_php_env_vars";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"fixup_bad_php_env_vars";s:11:"description";s:231:"PHP's environment can be a real mess across servers. Cleanup the best we can.See phpstub.php for info on what environmental data we can rely on.See Chris's own comments on http://php.net/manual/en/reserved.variables.server.php also";s:5:"flags";a:0:{}}s:17:"monitor_slow_urls";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"monitor_slow_urls";s:11:"description";s:53:"Use with register_shutdown_function to log slow URLs.";s:5:"flags";a:0:{}}s:15:"memory_tracking";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"memory_tracking";s:11:"description";s:27:"Log excessive memory usage.";s:5:"flags";a:0:{}}s:31:"prepare_for_known_ajax_response";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"prepare_for_known_ajax_response";s:11:"description";s:42:"Get ready for outputting an AJAX response.";s:5:"flags";a:0:{}}s:26:"memory_limit_for_max_param";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"max_param";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The max parameter name";s:11:"phpdoc_name";s:9:"max_param";}}s:4:"name";s:26:"memory_limit_for_max_param";s:11:"description";s:69:"Raise the PHP memory limit to cater for a requested large result set.";s:5:"flags";a:0:{}}s:24:"disable_php_memory_limit";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"disable_php_memory_limit";s:11:"description";s:150:"Disable the PHP memory limit. Do not use this carelessly, use it if a screen is a bit fat or in an importer, don't use it assuming memory is infinite.";s:5:"flags";a:0:{}}s:11:"get_charset";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_charset";s:11:"description";s:101:"Get the character set to use. We try and be clever to allow AJAX scripts to avoid loading up language";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The character set";}}s:15:"load_user_stuff";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"load_user_stuff";s:11:"description";s:41:"Load stuff that allows user code to work.";s:5:"flags";a:0:{}}s:18:"catch_fatal_errors";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"catch_fatal_errors";s:11:"description";s:124:"Composr error catcher for fatal versions. This is hooked in only on PHP5.2 as error_get_last() only works on these versions.";s:5:"flags";a:0:{}}s:21:"composr_error_handler";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"errno";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The error type-number";s:11:"phpdoc_name";s:5:"errno";}i:1;a:5:{s:4:"name";s:6:"errstr";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:17:"The error message";s:11:"phpdoc_name";s:6:"errstr";}i:2;a:5:{s:4:"name";s:7:"errfile";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The file the error occurred in";s:11:"phpdoc_name";s:7:"errfile";}i:3;a:5:{s:4:"name";s:7:"errline";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The line the error occurred on";s:11:"phpdoc_name";s:7:"errline";}}s:4:"name";s:21:"composr_error_handler";s:11:"description";s:53:"Composr error handler (hooked into PHP error system).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:241:"Mark error handled, so PHP's native error handling code does not execute. i.e. false => bubble, true => handled. For errors we intercept we don't return at all so bubbling never happens in such a case. $php_errormsg is only set if we bubble.";}}s:20:"is_browser_decaching";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_browser_decaching";s:11:"description";s:79:"Find whether the browser session is set to be doing a hard cache-empty refresh.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether the browser session is set to be doing a hard cache-empty refresh";}}s:14:"current_script";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"current_script";s:11:"description";s:32:"Find out what script is running.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The script running (usually 'index')";}}s:14:"running_script";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"is_this_running";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:62:"Script filename (canonically we want NO .php file type suffix)";s:11:"phpdoc_name";s:15:"is_this_running";}}s:4:"name";s:14:"running_script";s:11:"description";s:55:"Find whether a certain script is being run to get here.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the script is running";}}s:11:"inform_exit";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:73:"Whether match key messages / redirects should be supported (null: detect)";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:11:"inform_exit";s:11:"description";s:92:"This is a intended to output an informational exit at the same time as terminating execution";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:9:"warn_exit";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether match key messages / redirects should be supported";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:9:"warn_exit";s:11:"description";s:108:"This is a less-revealing alternative to fatal_exit, that is used for user-errors/common-corruption-scenarios";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:10:"fatal_exit";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:38:"The error message (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:10:"fatal_exit";s:11:"description";s:158:"Do a fatal exit, echo the header (if possible) and an error message, followed by a debugging back-trace.It also adds an entry to the error log, for reference.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:24:"log_hack_attack_and_exit";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:67:"The reason for the hack attack. This has to be a language string ID";s:11:"phpdoc_name";s:6:"reason";}i:1;a:7:{s:4:"name";s:14:"reason_param_a";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:97:"A parameter for the hack attack language string (this should be based on a unique ID, preferably)";s:11:"phpdoc_name";s:14:"reason_param_a";}i:2;a:7:{s:4:"name";s:14:"reason_param_b";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:67:"A more illustrative parameter, which may be anything (e.g. a title)";s:11:"phpdoc_name";s:14:"reason_param_b";}i:3;a:7:{s:4:"name";s:6:"silent";s:7:"default";s:13:"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 silently log the hack rather than also exiting";s:11:"phpdoc_name";s:6:"silent";}i:4;a:7:{s:4:"name";s:11:"instant_ban";s:7:"default";s:13:"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 a ban should be immediate";s:11:"phpdoc_name";s:11:"instant_ban";}}s:4:"name";s:24:"log_hack_attack_and_exit";s:11:"description";s:130:"Log a hackattack, then displays an error message. It also attempts to send an e-mail to the staff alerting them of the hackattack.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:11:"cms_version";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"cms_version";s:11:"description";s:43:"Get the major version of your installation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:45:"The major version number of your installation";}}s:18:"cms_version_pretty";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"cms_version_pretty";s:11:"description";s:174:"Get the full string version of Composr that you are running, in 'pretty' format.This is (and must be kept) equivalent to get_version_pretty__from_dotted(get_version_dotted())";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:49:"The string saying the full Composr version number";}}s:10:"get_domain";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_domain";s:11:"description";s:132:"Get the domain the website is installed on (preferably, without any www). The domain is used for e-mail defaults among other things.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:25:"The domain of the website";}}s:14:"get_forum_type";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_forum_type";s:11:"description";s:33:"Get the type of forums installed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:27:"The type of forum installed";}}s:18:"get_forum_base_url";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"forum_base";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:244:"Whether to get the base directory of the forum. Unless running Conversr, this makes no difference - if possibly running Conversr, you need to think about this parameter: are you trying to reach the MSN-central-site or just a link to the forums?";s:11:"phpdoc_name";s:10:"forum_base";}}s:4:"name";s:18:"get_forum_base_url";s:11:"description";s:33:"Get the installed forum base URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:28:"The installed forum base URL";}}s:15:"get_cookie_path";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_cookie_path";s:11:"description";s:28:"Get the Composr cookie path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:55:"The Composr cookie path (null: no special path, global)";}}s:17:"get_cookie_domain";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_cookie_domain";s:11:"description";s:30:"Get the Composr cookie domain.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:48:"The Composr cookie domain (null: current domain)";}}s:15:"get_cookie_days";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_cookie_days";s:11:"description";s:44:"Get the number of days to store our cookies.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:39:"The number of days to store our cookies";}}s:13:"get_site_name";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_site_name";s:11:"description";s:18:"Get the site name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The name of the site";}}s:12:"in_safe_mode";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"in_safe_mode";s:11:"description";s:41:"Find whether we are running in safe mode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether we are in safe mode";}}s:7:"cms_srv";a:6:{s:8:"filename";s:19:"sources/global2.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:6:"string";s:11:"description";s:17:"The variable name";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:7:"cms_srv";s:11:"description";s:33:"Get server environment variables.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:37:"The variable value ('' means unknown)";}}s:11:"find_script";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:3:{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:33:"The codename of the needed script";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:11:"append_keep";s:7:"default";s:13:"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 append keep variables";s:11:"phpdoc_name";s:11:"append_keep";}i:2;a:8:{s:4:"name";s:13:"base_url_code";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:70:"Code representing what base URL type to use (0=guess, 1=http, 2=https)";s:11:"phpdoc_name";s:13:"base_url_code";s:3:"set";s:5:"0 1 2";}}s:4:"name";s:11:"find_script";s:11:"description";s:279:"Find the URL to a certain entry point script, located in the root directory, top level of a zone directory, data directory, or data_custom directory.Why this function? Because Composr allows these to be moved around between zone directories, to suit site .htaccess requirements).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL to the script";}}s:12:"get_base_url";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:5:"https";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:96:"Whether to get the HTTPS base URL (null: do so only if the current page uses the HTTPS base URL)";s:11:"phpdoc_name";s:5:"https";}i:1;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:42:"The zone the link is for (null: root zone)";s:11:"phpdoc_name";s:8:"zone_for";}}s:4:"name";s:12:"get_base_url";s:11:"description";s:71:"Get the base URL (the minimum fully qualified URL to our installation).";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:19:"get_custom_base_url";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"https";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:96:"Whether to get the HTTPS base URL (null: do so only if the current page uses the HTTPS base URL)";s:11:"phpdoc_name";s:5:"https";}}s:4:"name";s:19:"get_custom_base_url";s:11:"description";s:160:"Get the base URL (the minimum fully qualified URL to our personal data installation). For a shared install, or a GAE-install, this is different to the base-url.";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:20:"get_complex_base_url";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:31:"Short base URL we need to probe";s:11:"phpdoc_name";s:2:"at";}}s:4:"name";s:20:"get_complex_base_url";s:11:"description";s:216:"Function to get a base URL for an Conversr relative-URL. The situation is complex as it needs to take into account Conversr multi-site-network's, locally defined theme images, and shared-installs (Demonstratr style).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:24:"The appropriate base-url";}}s:19:"either_param_string";a:6:{s:8:"filename";s:19:"sources/global2.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:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:150:"The default value to give the parameter if the parameter value is not defined (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:19:"either_param_string";s:11:"description";s:295:"Get a parameter value (either POST *or* GET, i.e. like $_REQUEST[$name]), or the default if neither can be found.Implements additional security over the direct PHP access mechanism which should not be used.Use with caution, as this has very limited CSRF protection compared to post_param_string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The parameter value (null: missing)";}}s:17:"post_param_string";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:150:"The default value to give the parameter if the parameter value is not defined (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}i:2;a:7:{s:4:"name";s:4:"html";s:7:"default";s:13:"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 we are cleaning for HTML rather than Comcode/plain-text";s:11:"phpdoc_name";s:4:"html";}i:3;a:7:{s:4:"name";s:17:"conv_from_wysiwyg";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:60:"Whether to convert WYSIWYG contents to Comcode automatically";s:11:"phpdoc_name";s:17:"conv_from_wysiwyg";}}s:4:"name";s:17:"post_param_string";s:11:"description";s:207:"Get the value of the specified POST parameter (i.e. like $_POST[$name]) if it is passed, or the default otherwise.Implements additional security over the direct PHP access mechanism which should not be used.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The parameter value (null: missing)";}}s:16:"get_param_string";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:150:"The default value to give the parameter if the parameter value is not defined (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}i:2;a:7:{s:4:"name";s:11:"no_security";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:66:"Whether to skip the security check. Does not currently do anything";s:11:"phpdoc_name";s:11:"no_security";}}s:4:"name";s:16:"get_param_string";s:11:"description";s:205:"Get the value of the specified GET parameter (i.e. like $_GET[$name]) if it is passed, or the default otherwise.Implements additional security over the direct PHP access mechanism which should not be used.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:35:"The parameter value (null: missing)";}}s:7:"__param";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:5:{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:42:"The array we're extracting parameters from";s:11:"phpdoc_name";s:5:"array";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:150:"The default value to give the parameter if the parameter value is not defined (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:7:"integer";s:7:"default";s:13:"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 parameter has to be an integer";s:11:"phpdoc_name";s:7:"integer";}i:4;a:7:{s:4:"name";s:6:"posted";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:62:"Whether the parameter is a POST parameter (null: undetermined)";s:11:"phpdoc_name";s:6:"posted";}}s:4:"name";s:7:"__param";s:11:"description";s:48:"Helper function to load up a GET/POST parameter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"The value of the parameter";}}s:24:"simulated_wildcard_match";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"context";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The haystack";s:11:"phpdoc_name";s:7:"context";}i:1;a:5:{s:4:"name";s:4:"word";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:34:"The needle (a wildcard expression)";s:11:"phpdoc_name";s:4:"word";}i:2;a:7:{s:4:"name";s:10:"full_cover";s:7:"default";s:13:"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 full-coverance is required";s:11:"phpdoc_name";s:10:"full_cover";}}s:4:"name";s:24:"simulated_wildcard_match";s:11:"description";s:58:"Do a wildcard match by converting to a regular expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether we have a match";}}s:20:"either_param_integer";a:6:{s:8:"filename";s:19:"sources/global2.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:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:170:"The default value to give the parameter if the parameter value is not defined or the empty string (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:20:"either_param_integer";s:11:"description";s:309:"This function is the integeric partner of either_param_string, as it returns the value as an integer.You should always use integer specified versions when inputting integers, for the added security that type validation allows. If the value is of the wrong type, it indicates a hack attempt and will be logged.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:62:"The parameter value (null: not set, and null given as default)";}}s:18:"post_param_integer";a:6:{s:8:"filename";s:19:"sources/global2.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:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:170:"The default value to give the parameter if the parameter value is not defined or the empty string (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:18:"post_param_integer";s:11:"description";s:99:"This function is the integeric partner of post_param_string, as it returns the value as an integer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:62:"The parameter value (null: not set, and null given as default)";}}s:17:"get_param_integer";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The name of the parameter to get";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"default";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"?~mixed";s:11:"description";s:170:"The default value to give the parameter if the parameter value is not defined or the empty string (null: allow missing parameter) (false: give error on missing parameter)";s:11:"phpdoc_name";s:7:"default";}i:2;a:7:{s:4:"name";s:13:"not_string_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:183:"If a string is given, use the default parameter rather than giving an error (only use this if you are suffering from a parameter conflict situation between different parts of Composr)";s:11:"phpdoc_name";s:13:"not_string_ok";}}s:4:"name";s:17:"get_param_integer";s:11:"description";s:98:"This function is the integeric partner of get_param_string, as it returns the value as an integer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:62:"The parameter value (null: not set, and null given as default)";}}s:19:"unixify_line_format";a:6:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:4:{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:17:"The data to clean";s:11:"phpdoc_name";s:2:"in";}i:1;a:7:{s:4:"name";s:15:"desired_charset";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:182:"The character set it should be in. We don't do any real conversions using this, only make sure that common problems with fed ISO-8859-1 data are resolved (null: output character set)";s:11:"phpdoc_name";s:15:"desired_charset";}i:2;a:7:{s:4:"name";s:4:"html";s:7:"default";s:13:"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 we are cleaning for HTML rather than Comcode/plain-text";s:11:"phpdoc_name";s:4:"html";}i:3;a:7:{s:4:"name";s:9:"from_disk";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the file is loaded from disk (less conversion needed)";s:11:"phpdoc_name";s:9:"from_disk";}}s:4:"name";s:19:"unixify_line_format";s:11:"description";s:510:"Make sure that lines are seperated by "\n", with no "\r"'s there at all. For Mac data, this will be a flip scenario. For Linux data this will be a null operation. For windows data this will be change from "\r\n" to just "\n". For a realistic scenario, data could have originated on all kinds of platforms, with some editors converting, some situations being inter-platform, and general confusion. Don't make blind assumptions - use this function to clean data, then write clean code that only considers "\n"'s.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The cleaned data";}}s:9:"sync_file";a:5:{s:8:"filename";s:19:"sources/global2.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:42:"File/directory name to sync on (full path)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:9:"sync_file";s:11:"description";s:127:"Provides an override point for file synchronisation between mirrored servers. Called after any file creation, deletion or edit.";s:5:"flags";a:0:{}}s:14:"sync_file_move";a:5:{s:8:"filename";s:19:"sources/global2.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:4:"PATH";s:11:"description";s:63:"File/directory name to move from (may be full or relative path)";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:4:"PATH";s:11:"description";s:61:"File/directory name to move to (may be full or relative path)";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:14:"sync_file_move";s:11:"description";s:122:"Provides an override point for file-move synchronisation between mirrored servers. Called after any rename or move action.";s:5:"flags";a:0:{}}s:22:"convert_data_encodings";a:5:{s:8:"filename";s:19:"sources/global2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"known_utf8";s:7:"default";s:13:"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 we know we are working in utf-8. This is the case for AJAX calls.";s:11:"phpdoc_name";s:10:"known_utf8";}}s:4:"name";s:22:"convert_data_encodings";s:11:"description";s:211:"Performs lots of magic to make sure data encodings are converted correctly. Input, and output too (as often stores internally in UTF or performs automatic dynamic conversions from internal to external charsets).";s:5:"flags";a:0:{}}s:13:"init__global3";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__global3";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"get_file_extension";a:6:{s:8:"filename";s:19:"sources/global3.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:12:"The filename";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:18:"get_file_extension";s:11:"description";s:71:"Get the file extension of the specified file. It returns without a dot.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The filename extension (no dot)";}}s:14:"is_suexec_like";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"is_suexec_like";s:11:"description";s:101:"Find whether we can get away with natural file access, not messing with AFMs, world-writability, etc.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:20:"Whether we have this";}}s:15:"fix_permissions";a:5:{s:8:"filename";s:19:"sources/global3.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:39:"The full pathname to the file/directory";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:5:"perms";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:185:"The permissions to make (not the permissions are reduced if the function finds that the file is owned by the web user [doesn't need world permissions then]) (null: default for file/dir)";s:11:"phpdoc_name";s:5:"perms";}}s:4:"name";s:15:"fix_permissions";s:11:"description";s:253:"Ensure that the specified file/folder is writeable for the FTP user (so that it can be deleted by the system), and should be called whenever a file is uploaded/created, or a folder is made. We call this function assuming we are giving world permissions.";s:5:"flags";a:0:{}}s:26:"cms_file_get_contents_safe";a:6:{s:8:"filename";s:19:"sources/global3.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:10:"File path.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:26:"cms_file_get_contents_safe";s:11:"description";s:49:"Get the contents of a file, with locking support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"File contents.";}}s:18:"http_download_file";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:19:{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 download";s:11:"phpdoc_name";s:3:"url";}i:1;a:8:{s:4:"name";s:10:"byte_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:91:"The number of bytes to download. This is not a guarantee, it is a minimum (null: all bytes)";s:11:"phpdoc_name";s:10:"byte_limit";s:5:"range";s:5:"1 max";}i:2;a:7:{s:4:"name";s:13:"trigger_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to throw a Composr error, on error";s:11:"phpdoc_name";s:13:"trigger_error";}i:3;a:7:{s:4:"name";s:11:"no_redirect";s:7:"default";s:13:"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 block redirects (returns null when found)";s:11:"phpdoc_name";s:11:"no_redirect";}i:4;a:7:{s:4:"name";s:2:"ua";s:7:"default";s:7:"Composr";s:11:"default_raw";s:9:"'Composr'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:29:"The user-agent to identify as";s:11:"phpdoc_name";s:2:"ua";}i:5;a:7:{s:4:"name";s:11:"post_params";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:97:"An optional array of POST parameters to send; if this is null, a GET request is used (null: none)";s:11:"phpdoc_name";s:11:"post_params";}i:6;a:7:{s:4:"name";s:7:"cookies";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:49:"An optional array of cookies to send (null: none)";s:11:"phpdoc_name";s:7:"cookies";}i:7;a:7:{s:4:"name";s:6:"accept";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:44:"'accept' header value (null: don't pass one)";s:11:"phpdoc_name";s:6:"accept";}i:8;a:7:{s:4:"name";s:14:"accept_charset";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:52:"'accept-charset' header value (null: don't pass one)";s:11:"phpdoc_name";s:14:"accept_charset";}i:9;a:7:{s:4:"name";s:15:"accept_language";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:53:"'accept-language' header value (null: don't pass one)";s:11:"phpdoc_name";s:15:"accept_language";}i:10;a:7:{s:4:"name";s:13:"write_to_file";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:46:"File handle to write to (null: do not do that)";s:11:"phpdoc_name";s:13:"write_to_file";}i:11;a:7:{s:4:"name";s:7:"referer";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:29:"The HTTP referer (null: none)";s:11:"phpdoc_name";s:7:"referer";}i:12;a:7:{s:4:"name";s:4:"auth";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:"A pair: authentication username and password (null: none)";s:11:"phpdoc_name";s:4:"auth";}i:13;a:7:{s:4:"name";s:7:"timeout";s:7:"default";d:6;s:11:"default_raw";s:3:"6.0";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:11:"The timeout";s:11:"phpdoc_name";s:7:"timeout";}i:14;a:7:{s:4:"name";s:8:"raw_post";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether to treat the POST parameters as a raw POST (rather than using MIME)";s:11:"phpdoc_name";s:8:"raw_post";}i:15;a:7:{s:4:"name";s:5:"files";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:58:"Files to send. Map between field to file path (null: none)";s:11:"phpdoc_name";s:5:"files";}i:16;a:7:{s:4:"name";s:13:"extra_headers";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:"Extra headers to send (null: none)";s:11:"phpdoc_name";s:13:"extra_headers";}i:17;a:7:{s:4:"name";s:9:"http_verb";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:55:"HTTP verb (null: auto-decide based on other parameters)";s:11:"phpdoc_name";s:9:"http_verb";}i:18;a:7:{s:4:"name";s:16:"raw_content_type";s:7:"default";s:15:"application/xml";s:11:"default_raw";s:17:"'application/xml'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:42:"The content type to use if a raw HTTP post";s:11:"phpdoc_name";s:16:"raw_content_type";}}s:4:"name";s:18:"http_download_file";s:11:"description";s:167:"Return the file in the URL by downloading it over HTTP. If a byte limit is given, it will only download that many bytes. It outputs warnings, returning null, on error.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:33:"The data downloaded (null: error)";}}s:24:"_load_blank_output_state";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:13:"just_tempcode";s:7:"default";s:13:"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 only restore the Tempcode execution part of the state.";s:11:"phpdoc_name";s:13:"just_tempcode";}i:1;a:7:{s:4:"name";s:10:"true_blank";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:90:"Whether to go for a completely blank state (no defaults!), not just a default fresh state.";s:11:"phpdoc_name";s:10:"true_blank";}}s:4:"name";s:24:"_load_blank_output_state";s:11:"description";s:26:"Load a fresh output state.";s:5:"flags";a:0:{}}s:17:"push_output_state";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:13:"just_tempcode";s:7:"default";s:13:"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 only restore the Tempcode execution part of the state.";s:11:"phpdoc_name";s:13:"just_tempcode";}i:1;a:7:{s:4:"name";s:10:"true_blank";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:90:"Whether to go for a completely blank state (no defaults!), not just a default fresh state.";s:11:"phpdoc_name";s:10:"true_blank";}}s:4:"name";s:17:"push_output_state";s:11:"description";s:58:"Push the output state on the stack and create a fresh one.";s:5:"flags";a:0:{}}s:20:"restore_output_state";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:13:"just_tempcode";s:7:"default";s:13:"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 only restore the Tempcode execution part of the state.";s:11:"phpdoc_name";s:13:"just_tempcode";}i:1;a:7:{s:4:"name";s:13:"merge_current";s:7:"default";s:13:"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 merge the current output state in.";s:11:"phpdoc_name";s:13:"merge_current";}i:2;a:7:{s:4:"name";s:4:"keep";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:"Settings to keep / merge if possible (null: none).";s:11:"phpdoc_name";s:4:"keep";}}s:4:"name";s:20:"restore_output_state";s:11:"description";s:78:"Restore the last output state on the stack, or a fresh one if none was pushed.";s:5:"flags";a:0:{}}s:9:"globalise";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"middle";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:75:"The Tempcode to put into a nice frame (null: support output streaming mode)";s:11:"phpdoc_name";s:6:"middle";}i:1;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:6:"?mixed";s:11:"description";s:33:"'Additional' message (null: none)";s:11:"phpdoc_name";s:7:"message";}i:2;a:8:{s:4:"name";s:4:"type";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:"The type of special message";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:14:"inform warn """;}i:3;a:7:{s:4:"name";s:25:"include_header_and_footer";s:7:"default";s:13:"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:"Whether to include the header/footer/panels";s:11:"phpdoc_name";s:25:"include_header_and_footer";}i:4;a:7:{s:4:"name";s:11:"show_border";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:134:"Whether to include a full screen rendering layout (will be overridable by 'show_border' GET parameter if present or if main page view)";s:11:"phpdoc_name";s:11:"show_border";}}s:4:"name";s:9:"globalise";s:11:"description";s:46:"Turn the Tempcode lump into a standalone page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Standalone page";}}s:23:"attach_to_screen_footer";a:5:{s:8:"filename";s:19:"sources/global3.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:5:"mixed";s:11:"description";s:36:"XHTML to attach (Tempcode or string)";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:23:"attach_to_screen_footer";s:11:"description";s:39:"Attach some XHTML to the screen footer.";s:5:"flags";a:0:{}}s:26:"set_extra_request_metadata";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"metadata";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Extra metadata";s:11:"phpdoc_name";s:8:"metadata";}i:1;a:7:{s:4:"name";s:3:"row";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:90:"Content row to automatically grab data from, if we also have $content_type (null: unknown)";s:11:"phpdoc_name";s:3:"row";}i:2;a:7:{s:4:"name";s:12:"content_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:28:"Content type (null: unknown)";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:7:{s:4:"name";s:10:"content_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:26:"Content ID (null: unknown)";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:26:"set_extra_request_metadata";s:11:"description";s:34:"Add some metadata for the request.";s:5:"flags";a:0:{}}s:20:"set_http_status_code";a:5:{s:8:"filename";s:19:"sources/global3.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:6:"string";s:11:"description";s:40:"The HTTP status code (should be numeric)";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:20:"set_http_status_code";s:11:"description";s:41:"Set the HTTP status code for the request.";s:5:"flags";a:0:{}}s:19:"find_template_place";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The codename of the template being loaded";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:105:"The language to load the template in (templates can embed language references) (null: users own language)";s:11:"phpdoc_name";s:4:"lang";}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:16:"The theme to use";s:11:"phpdoc_name";s:5:"theme";}i:3;a:5:{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";}i:4;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:13:"templates css";}i:5;a:7:{s:4:"name";s:15:"non_custom_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:47:"Whether to only search in the default templates";s:11:"phpdoc_name";s:15:"non_custom_only";}}s:4:"name";s:19:"find_template_place";s:11:"description";s:22:"Search for a template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:123:"List of parameters needed for the _do_template function to be able to load the template (null: could not find the template)";}}s:12:"is_wide_high";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"is_wide_high";s:11:"description";s:63:"Find whether panels and the header/footer areas won't be shown.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"BINARY";s:11:"description";s:7:"Result.";}}s:7:"is_wide";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"is_wide";s:11:"description";s:34:"Find whether panels will be shown.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"BINARY";s:11:"description";s:7:"Result.";}}s:15:"fix_bad_unicode";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Input string";s:11:"phpdoc_name";s:5:"input";}i:1;a:7:{s:4:"name";s:18:"definitely_unicode";s:7:"default";s:13:"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:"If we know the input is meant to be unicode";s:11:"phpdoc_name";s:18:"definitely_unicode";}}s:4:"name";s:15:"fix_bad_unicode";s:11:"description";s:343:"Fixes bad unicode (utf-8) in the input. Useful when input may be dirty, e.g. from a txt file, or from a potential hacker.The fix is imperfect, it will actually treat the input as ISO-8859-1 if not valid utf-8, then reconvert. Some limited scrambling is considered better than a stack trace.This function does nothing if we are not using utf-8.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:81:"Guaranteed valid utf-8, if we're using it, otherwise the same as the input string";}}s:13:"cms_mb_strlen";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{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:"The string to get the length of.";s:11:"phpdoc_name";s:2:"in";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force unicode as on.";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:13:"cms_mb_strlen";s:11:"description";s:64:"Get string length, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:18:"The string length.";}}s:13:"cms_mb_substr";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:4:{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:12:"The subject.";s:11:"phpdoc_name";s:2:"in";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The start position.";s:11:"phpdoc_name";s:4:"from";}i:2;a:7:{s:4:"name";s:6:"amount";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 length to extract (null: all remaining).";s:11:"phpdoc_name";s:6:"amount";}i:3;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force unicode as on.";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:13:"cms_mb_substr";s:11:"description";s:70:"Return part of a string, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:59:"String part (false: $start was over the end of the string).";}}s:14:"cms_mb_ucwords";a:6:{s:8:"filename";s:19:"sources/global3.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:8:"Subject.";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:14:"cms_mb_ucwords";s:11:"description";s:71:"Make a string title-case, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Result.";}}s:17:"cms_mb_strtolower";a:6:{s:8:"filename";s:19:"sources/global3.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:8:"Subject.";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:17:"cms_mb_strtolower";s:11:"description";s:70:"Make a string lowercase, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Result.";}}s:17:"cms_mb_strtoupper";a:6:{s:8:"filename";s:19:"sources/global3.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:8:"Subject.";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:17:"cms_mb_strtoupper";s:11:"description";s:70:"Make a string uppercase, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Result.";}}s:15:"is_ascii_string";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"String to test";s:11:"phpdoc_name";s:1:"x";}}s:4:"name";s:15:"is_ascii_string";s:11:"description";s:80:"Find if we a string is ASCII, and hence we can use non-UTF-safe functions on it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is ASCII";}}s:16:"is_writable_wrap";a:6:{s:8:"filename";s:19:"sources/global3.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:13:"The file path";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:16:"is_writable_wrap";s:11:"description";s:150:"Find whether a file/directory is writeable. This function is designed to get past that the PHP is_writable function does not work properly on Windows.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the file is writeable";}}s:23:"intelligent_write_error";a:5:{s:8:"filename";s:19:"sources/global3.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:61:"File path that could not be written (full path, not relative)";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:23:"intelligent_write_error";s:11:"description";s:79:"Discern the cause of a file-write error, and show an appropriate error message.";s:5:"flags";a:0:{}}s:30:"intelligent_write_error_inline";a:6:{s:8:"filename";s:19:"sources/global3.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:35:"File path that could not be written";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:30:"intelligent_write_error_inline";s:11:"description";s:81:"Discern the cause of a file-write error, and return an appropriate error message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Message";}}s:12:"has_no_forum";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"has_no_forum";s:11:"description";s:46:"Find whether we have no forum on this website.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether we have no forum on this website";}}s:15:"addon_installed";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"addon";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The module name";s:11:"phpdoc_name";s:5:"addon";}i:1;a:7:{s:4:"name";s:15:"non_bundled_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:73:"Whether to check non-bundled addons (ones without an addon_registry hook)";s:11:"phpdoc_name";s:15:"non_bundled_too";}}s:4:"name";s:15:"addon_installed";s:11:"description";s:38:"Check to see if an addon is installed.";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:19:"float_to_raw_string";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"num";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:10:"The number";s:11:"phpdoc_name";s:3:"num";}i:1;a:7:{s:4:"name";s:11:"decs_wanted";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:30:"The number of decimals to keep";s:11:"phpdoc_name";s:11:"decs_wanted";}i:2;a:7:{s:4:"name";s:16:"only_needed_decs";s:7:"default";s:13:"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 trim trailing zeros";s:11:"phpdoc_name";s:16:"only_needed_decs";}}s:4:"name";s:19:"float_to_raw_string";s:11:"description";s:90:"Convert a float to a "technical string representation of a float". Inverted with floatval.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The string converted";}}s:12:"float_format";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:19:"The value to format";s:11:"phpdoc_name";s:3:"val";}i:1;a:7:{s:4:"name";s:11:"decs_wanted";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:31:"The number of fractional digits";s:11:"phpdoc_name";s:11:"decs_wanted";}i:2;a:7:{s:4:"name";s:16:"only_needed_decs";s:7:"default";s:13:"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 trim trailing zeros";s:11:"phpdoc_name";s:16:"only_needed_decs";}}s:4:"name";s:12:"float_format";s:11:"description";s:108:"Format the given float number as a nicely formatted string (using the locale). Inverted with float_unformat.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"Nicely formatted string";}}s:14:"float_unformat";a:6:{s:8:"filename";s:19:"sources/global3.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:44:"The formatted float number using the locale.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:16:"no_thousands_sep";s:7:"default";s:13:"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 we do *not* expect a thousands separator, which means we can be a bit smarter.";s:11:"phpdoc_name";s:16:"no_thousands_sep";}}s:4:"name";s:14:"float_unformat";s:11:"description";s:100:"Take the given formatted float number and convert it to a native float. The inverse of float_format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:12:"Native float";}}s:14:"integer_format";a:6:{s:8:"filename";s:19:"sources/global3.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:7:"integer";s:11:"description";s:19:"The value to format";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:14:"integer_format";s:11:"description";s:80:"Format the given integer number as a nicely formatted string (using the locale).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"Nicely formatted string";}}s:20:"sort_maps_by__strlen";a:5:{s:8:"filename";s:19:"sources/global3.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:20:"List of maps to sort";s:11:"phpdoc_name";s:4:"rows";}i:1;a:5:{s:4:"name";s:8:"sort_key";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:143:"Either an integer sort key (to sort by integer key ID of contained arrays) or a String sort key (to sort by string key ID of contained arrays).";s:11:"phpdoc_name";s:8:"sort_key";}}s:4:"name";s:20:"sort_maps_by__strlen";s:11:"description";s:76:"Sort a list of maps by the string length of a particular key ID in the maps.";s:5:"flags";a:0:{}}s:12:"_strlen_sort";a:6:{s:8:"filename";s:19:"sources/global3.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:6:"string";s:11:"description";s:27:"The first string to compare";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:6:"string";s:11:"description";s:28:"The second string to compare";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:12:"_strlen_sort";s:11:"description";s:58:"Helper function for usort to sort a list by string length.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:60:"The comparison result (0 for equal, -1 for less, 1 for more)";}}s:12:"sort_maps_by";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:20:"List of maps to sort";s:11:"phpdoc_name";s:4:"rows";}i:1;a:5:{s:4:"name";s:9:"sort_keys";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:212:"Either an integer sort key (to sort by integer key ID of contained arrays) or a Comma-separated list of sort keys (to sort by string key ID of contained arrays; prefix '!' a key to reverse the sort order for it).";s:11:"phpdoc_name";s:9:"sort_keys";}i:2;a:7:{s:4:"name";s:26:"preserve_order_if_possible";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Don't shuffle order unnecessarily (i.e. do a merge sort)";s:11:"phpdoc_name";s:26:"preserve_order_if_possible";}}s:4:"name";s:12:"sort_maps_by";s:11:"description";s:147:"Sort a list of maps by a particular key ID in the maps. Does not (and should not) preserve list indices, but does preserve associative key indices.";s:5:"flags";a:0:{}}s:10:"merge_sort";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:10:"Sort array";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:12:"cmp_function";s:7:"default";s:6:"strcmp";s:11:"default_raw";s:8:"'strcmp'";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:19:"Comparison function";s:11:"phpdoc_name";s:12:"cmp_function";}}s:4:"name";s:10:"merge_sort";s:11:"description";s:138:"Do a user sort, preserving order where reordering not needed. Based on a PHP manual comment at http://php.net/manual/en/function.usort.php";s:5:"flags";a:0:{}}s:11:"_multi_sort";a:6:{s:8:"filename";s:19:"sources/global3.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:20:"The first to compare";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:21:"The second to compare";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:11:"_multi_sort";s:11:"description";s:82:"Helper function to sort a list of maps by the value at $key in each of those maps.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:60:"The comparison result (0 for equal, -1 for less, 1 for more)";}}s:27:"cns_require_all_forum_stuff";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"cns_require_all_forum_stuff";s:11:"description";s:47:"Require all code relating to the Conversr forum";s:5:"flags";a:0:{}}s:11:"cms_tempnam";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"prefix";s:7:"default";s:3:"cms";s:11:"default_raw";s:5:"'cms'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The prefix of the temporary file name.";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:11:"cms_tempnam";s:11:"description";s:229:"Create file with unique file name, but works around compatibility issues between servers. Note that the file is NOT automatically deleted. You should also delete it using "@unlink", as some servers have problems with permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:46:"The name of the temporary file (false: error).";}}s:10:"array_peek";a:6:{s:8:"filename";s:19:"sources/global3.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:20:"The stack to peek in";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:10:"depth_down";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:39:"The depth into the stack we are peaking";s:11:"phpdoc_name";s:10:"depth_down";}}s:4:"name";s:10:"array_peek";s:11:"description";s:24:"Peek at a stack element.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:25:"The result of the peeking";}}s:6:"fix_id";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";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:5:"param";}}s:4:"name";s:6:"fix_id";s:11:"description";s:43:"Make a value suitable for use in an XML ID.";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:15:"match_key_match";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"match_keys";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:60:"Match keys (comma-separated list of match-keys, or array of)";s:11:"phpdoc_name";s:10:"match_keys";}i:1;a:7:{s:4:"name";s:12:"support_post";s:7:"default";s:13:"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:"Check against POSTed data too";s:11:"phpdoc_name";s:12:"support_post";}i:2;a:7:{s:4:"name";s:14:"current_params";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:101:"Parameters to check against (null: get from environment GET/POST) - if set, $support_post is ignored)";s:11:"phpdoc_name";s:14:"current_params";}i:3;a:7:{s:4:"name";s:17:"current_zone_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:46:"Current zone name (null: get from environment)";s:11:"phpdoc_name";s:17:"current_zone_name";}i:4;a:7:{s:4:"name";s:17:"current_page_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:46:"Current page name (null: get from environment)";s:11:"phpdoc_name";s:17:"current_page_name";}}s:4:"name";s:15:"match_key_match";s:11:"description";s:60:"See if the current URL matches the given Composr match-keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether there is a match";}}s:23:"get_page_or_script_name";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_page_or_script_name";s:11:"description";s:53:"Get the name of the page in the URL or active script.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The current page/script name";}}s:13:"get_page_name";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_page_name";s:11:"description";s:225:"Get the name of the page in the URL (by convention: the current page).This works on the basis of the 'page' parameter and does not require index.php be the active script.It will do dash to underscore substitution as required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The current page name";}}s:21:"fix_page_name_dashing";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Zone.";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:6:"string";s:11:"description";s:5:"Page.";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:21:"fix_page_name_dashing";s:11:"description";s:64:"Fix a page name that may have been given dashes for SEO reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The fixed page name.";}}s:11:"list_to_map";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"map_value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"The key key of our maps that reside in our map";s:11:"phpdoc_name";s:9:"map_value";}i:1;a:5:{s:4:"name";s:4:"list";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:4:"list";}}s:4:"name";s:11:"list_to_map";s:11:"description";s:292:"Take a list of maps, and make one of the values of each array the index of a map to the map.list_to_map is very useful for handling query results.Let's imagine you get the result of SELECT id,title FROM sometable.list_to_map turns the array of rows into a map between the id key and each row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The collapsed map";}}s:22:"collapse_2d_complexity";a:6:{s:8:"filename";s:19:"sources/global3.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:6:"string";s:11:"description";s:46:"The key key of our maps that reside in our map";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:6:"string";s:11:"description";s:48:"The value key of our maps that reside in our map";s:11:"phpdoc_name";s:5:"value";}i:2;a:5:{s:4:"name";s:4:"list";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The map of maps";s:11:"phpdoc_name";s:4:"list";}}s:4:"name";s:22:"collapse_2d_complexity";s:11:"description";s:71:"Take a list of maps of just two elements, and make it into a single map";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The collapsed map";}}s:22:"collapse_1d_complexity";a:6:{s:8:"filename";s:19:"sources/global3.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:"?string";s:11:"description";s:60:"The key of our maps that reside in our map (null: first key)";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:4:"list";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The map of maps";s:11:"phpdoc_name";s:4:"list";}}s:4:"name";s:22:"collapse_1d_complexity";s:11:"description";s:70:"Take a list of maps of just one element, and make it into a single map";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The collapsed map";}}s:11:"is_valid_ip";a:6:{s:8:"filename";s:19:"sources/global3.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:20:"IP address to check.";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:11:"is_valid_ip";s:11:"description";s:35:"Find whether an IP address is valid";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the IP address is valid.";}}s:14:"get_ip_address";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:8:{s:4:"name";s:6:"amount";s:7:"default";i:4;s:11:"default_raw";s:1:"4";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:109:"The number of groups to include in the IP address (rest will be replaced with *'s). For IP6, this is doubled.";s:11:"phpdoc_name";s:6:"amount";s:3:"set";s:7:"1 2 3 4";}i:1;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:60:"IP address to use, normally left null (null: current user's)";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:14:"get_ip_address";s:11:"description";s:55:"Attempt to get the clean IP address of the current user";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:56:"The users IP address (blank: could not find a valid one)";}}s:20:"normalise_ip_address";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{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:27:"The IP address to normalise";s:11:"phpdoc_name";s:2:"ip";}i:1;a:7:{s:4:"name";s:6:"amount";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:33:"Amount to mask out (null: do not)";s:11:"phpdoc_name";s:6:"amount";}}s:4:"name";s:20:"normalise_ip_address";s:11:"description";s:31:"Normalise a provided IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:25:"The normalised IP address";}}s:8:"me_debug";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{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:20:"IP address of tester";s:11:"phpdoc_name";s:2:"ip";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:15:"Data to display";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:8:"me_debug";s:11:"description";s:53:"Exit with debug data, only for a specific IP address.";s:5:"flags";a:0:{}}s:18:"get_browser_string";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_browser_string";s:11:"description";s:37:"Get a string of the users web browser";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"The web browser string";}}s:13:"get_os_string";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_os_string";s:11:"description";s:31:"Get the user's operating system";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:27:"The operating system string";}}s:14:"cron_installed";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"cron_installed";s:11:"description";s:25:"Find if Cron is installed";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether Cron is installed";}}s:18:"compare_ip_address";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"wild";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The general IP address that is potentially wildcarded";s:11:"phpdoc_name";s:4:"wild";}i:1;a:5:{s:4:"name";s:4:"full";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:39:"The specific IP address we are checking";s:11:"phpdoc_name";s:4:"full";}}s:4:"name";s:18:"compare_ip_address";s:11:"description";s:96:"Compare two IP addresses for potential correlation. Not as simple as equality due to '*' syntax.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether the IP addresses correlate";}}s:22:"compare_ip_address_ip4";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"wild";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The general IP address that is potentially wildcarded";s:11:"phpdoc_name";s:4:"wild";}i:1;a:5:{s:4:"name";s:10:"full_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:61:"The exploded parts of the specific IP address we are checking";s:11:"phpdoc_name";s:10:"full_parts";}}s:4:"name";s:22:"compare_ip_address_ip4";s:11:"description";s:113:"Compare two IP addresses for potential correlation. Not as simple as equality due to '*' syntax. IP4-only variant";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether the IP addresses correlate";}}s:22:"compare_ip_address_ip6";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"wild";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The general IP address that is potentially wildcarded";s:11:"phpdoc_name";s:4:"wild";}i:1;a:5:{s:4:"name";s:10:"full_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:61:"The exploded parts of the specific IP address we are checking";s:11:"phpdoc_name";s:10:"full_parts";}}s:4:"name";s:22:"compare_ip_address_ip6";s:11:"description";s:113:"Compare two IP addresses for potential correlation. Not as simple as equality due to '*' syntax. IP6-only variant";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether the IP addresses correlate";}}s:9:"ip_banned";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:66:"The IP address to check for banning (potentially encoded with *'s)";s:11:"phpdoc_name";s:2:"ip";}i:1;a:7:{s:4:"name";s:8:"force_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:24:"Force check via database";s:11:"phpdoc_name";s:8:"force_db";}i:2;a:7:{s:4:"name";s:20:"handle_uncertainties";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:149:"Handle uncertainities (used for the external bans - if true, we may return null, showing we need to do an external check). Only works with $force_db.";s:11:"phpdoc_name";s:20:"handle_uncertainties";}}s:4:"name";s:9:"ip_banned";s:11:"description";s:40:"Check to see if an IP address is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:48:"Whether the IP address is banned (null: unknown)";}}s:6:"log_it";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:60:"The type of activity just carried out (a language string ID)";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:1:"a";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:66:"The most important parameter of the activity (e.g. D) (null: none)";s:11:"phpdoc_name";s:1:"a";}i:2;a:7:{s:4:"name";s:1:"b";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:91:"A secondary (perhaps, human readable) parameter of the activity (e.g. caption) (null: none)";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:6:"log_it";s:11:"description";s:13:"Log an action";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:33:"Log ID (null: did not save a log)";}}s:14:"php_addslashes";a:6:{s:8:"filename";s:19:"sources/global3.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:9:"String in";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:14:"php_addslashes";s:11:"description";s:48:"Escape a string to fit within PHP double quotes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Resultant string";}}s:21:"remove_duplicate_rows";a:6:{s:8:"filename";s:19:"sources/global3.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:33:"The rows to remove duplication of";s:11:"phpdoc_name";s:4:"rows";}i:1;a:7:{s:4:"name";s:8:"id_field";s:7:"default";s:2:"id";s:11:"default_raw";s:4:"'id'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The ID field";s:11:"phpdoc_name";s:8:"id_field";}}s:4:"name";s:21:"remove_duplicate_rows";s:11:"description";s:125:"Remove any duplication inside the list of rows (each row being a map). Duplication is defined by rows with correspinding IDs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The filtered rows";}}s:22:"member_tracking_update";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The page";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:7:"ID_TEXT";s:11:"description";s:8:"The type";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:22:"member_tracking_update";s:11:"description";s:57:"Update the member tracker for the currently viewing user.";s:5:"flags";a:0:{}}s:12:"is_invisible";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"is_invisible";s:11:"description";s:43:"Find whether the current user is invisible.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the current user is invisible";}}s:18:"get_num_users_site";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_num_users_site";s:11:"description";s:124:"Get the number of users on the site in the last 5 minutes. The function also maintains the statistic via the sessions table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The number of users on the site";}}s:18:"get_num_users_peak";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_num_users_peak";s:11:"description";s:72:"Get the largest amount of users ever to be on the site at the same time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:24:"The number of peak users";}}s:11:"escape_html";a:6:{s:8:"filename";s:19:"sources/global3.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:5:"mixed";s:11:"description";s:16:"The input string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:11:"escape_html";s:11:"description";s:58:"Get the specified string, but with all characters escaped.";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:15:"browser_matches";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:6:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The property code";s:11:"phpdoc_name";s:4:"code";s:3:"set";s:141:"android ios wysiwyg windows mac linux odd_os mobile ie ie8 ie8+ ie9 ie9+ gecko safari odd_browser chrome bot simplified_attachments_ui itunes";}i:1;a:7:{s:4:"name";s:7:"comcode";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:126:"Comcode that might be WYSIWYG edited; used to determine whether WYSIWYG may load when we'd prefer it to not do so (null: none)";s:11:"phpdoc_name";s:7:"comcode";}}s:4:"name";s:15:"browser_matches";s:11:"description";s:146:"See's if the current browser matches some special property code. Assumes users are keeping up on newish browsers (except for IE users, who are 6+)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether there is a match";}}s:9:"is_mobile";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:10:"user_agent";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:67:"The user agent (null: get from environment, current user's browser)";s:11:"phpdoc_name";s:10:"user_agent";}i:1;a:7:{s:4:"name";s:5:"truth";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:88:"Whether to always tell the truth (even if the current page does not have mobile support)";s:11:"phpdoc_name";s:5:"truth";}}s:4:"name";s:9:"is_mobile";s:11:"description";s:85:"Look at the user's browser, and decide if they are viewing on a mobile device or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the user is using a mobile device";}}s:12:"get_bot_type";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_bot_type";s:11:"description";s:60:"Get the name of a webcrawler bot, or null if no bot detected";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:38:"Webcrawling bot name (null: not a bot)";}}s:11:"has_cookies";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"has_cookies";s:11:"description";s:239:"Determine whether the user's browser supports cookies or not.Unfortunately this function will only return true once a user has been to the site more than once... Composr will set a cookie, and if it perseveres, that indicates cookies work.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the user has definitely got cookies";}}s:6:"has_js";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"has_js";s:11:"description";s:215:"Determine whether the user's browser supports JavaScript or not.Unfortunately this function will only return true once a user has been to the site more than once... JavaScript will set a cookie, indicating it works.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether the user has definitely got JavaScript";}}s:21:"flatten_slashed_array";a:6:{s:8:"filename";s:19:"sources/global3.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 convert";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:16:"already_stripped";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:68:"Whether PHP magic-quotes have already been cleaned out for the array";s:11:"phpdoc_name";s:16:"already_stripped";}}s:4:"name";s:21:"flatten_slashed_array";s:11:"description";s:46:"Turn an array into a humanely readable string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:41:"A humanely readable version of the array.";}}s:15:"wordfilter_text";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Text to filter";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:15:"wordfilter_text";s:11:"description";s:50:"Get a word-filtered version of the specified text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:34:"Filtered version of the input text";}}s:5:"mixed";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"mixed";s:11:"description";s:95:"Assign this to explicitly declare that a variable may be of mixed type, and initialise to null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:29:"Of mixed type (null: default)";}}s:16:"seo_meta_get_for";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 ID of the resource";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:16:"seo_meta_get_for";s:11:"description";s:43:"Get meta information for specified resource";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:126:"A pair: The first element is the meta keyword string for the specified resource, and the other is the meta description string.";}}s:17:"seo_meta_load_for";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 ID of the resource";s:11:"phpdoc_name";s:2:"id";}i:2;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:7:"?string";s:11:"description";s:146:"The page-specific title to use, in Comcode or plain-text format with possible HTML entities included [Comcode will later be stripped] (null: none)";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:17:"seo_meta_load_for";s:11:"description";s:153:"Load the specified resource's meta information into the system for use on this page.Also, if the title is specified then this is used for the page title.";s:5:"flags";a:0:{}}s:15:"get_loaded_tags";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:8:"limit_to";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:75:"The search code for this tag content (e.g. downloads) (null: there is none)";s:11:"phpdoc_name";s:8:"limit_to";}i:1;a:7:{s:4:"name";s:8:"the_tags";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:62:"Explicitly pass a list of tags instead (null: use loaded ones)";s:11:"phpdoc_name";s:8:"the_tags";}}s:4:"name";s:15:"get_loaded_tags";s:11:"description";s:80:"Get Tempcode for tags, based on loaded up from SEO keywords (seo_meta_load_for).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Loaded tag output (or blank if there are none)";}}s:21:"get_zone_default_page";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"zone_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Zone name";s:11:"phpdoc_name";s:9:"zone_name";}}s:4:"name";s:21:"get_zone_default_page";s:11:"description";s:32:"Get the default page for a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Default page";}}s:8:"titleify";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"boring";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The codename";s:11:"phpdoc_name";s:6:"boring";}}s:4:"name";s:8:"titleify";s:11:"description";s:46:"Turn a boring codename, into a "pretty" title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The title";}}s:20:"propagate_filtercode";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"prefix";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:43:"Prefix for main filter environment variable";s:11:"phpdoc_name";s:6:"prefix";}}s:4:"name";s:20:"propagate_filtercode";s:11:"description";s:35:"Propagate Filtercode through links.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"Extra URL mappings";}}s:30:"propagate_filtercode_page_link";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"propagate_filtercode_page_link";s:11:"description";s:40:"Propagate Filtercode through page-links.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Extra page-link mappings";}}s:26:"make_fractionable_editable";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{i:0;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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:76:"Content title (either unescaped string, or Compiled Comcode [i.e. Tempcode])";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:26:"make_fractionable_editable";s:11:"description";s:60:"Make some text fractionably editable (i.e. inline editable).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:39:"Inline editable HTML to put into output";}}s:15:"fractional_edit";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"fractional_edit";s:11:"description";s:43:"Find whether a fractional edit is underway.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether a fractional edit is underway";}}s:10:"strip_html";a:6:{s:8:"filename";s:19:"sources/global3.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:4:"HTML";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:10:"strip_html";s:11:"description";s:32:"Convert some HTML to plain text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"Plain text";}}s:18:"get_brand_base_url";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_brand_base_url";s:11:"description";s:36:"Find the base URL for documentation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The base URL for documentation";}}s:16:"get_tutorial_url";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"tutorial";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:54:"Name of a tutorial (null: don't include the page part)";s:11:"phpdoc_name";s:8:"tutorial";}}s:4:"name";s:16:"get_tutorial_url";s:11:"description";s:32:"Get a URL to a Composr tutorial.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:17:"URL to a tutorial";}}s:18:"get_brand_page_url";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"params";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:7:"URL map";s:11:"phpdoc_name";s:6:"params";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:4:"Zone";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:18:"get_brand_page_url";s:11:"description";s:29:"Get a URL to a compo.sr page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:11:"URL to page";}}s:10:"brand_name";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"brand_name";s:11:"description";s:19:"Get the brand name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"The brand name";}}s:21:"is_cns_satellite_site";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"is_cns_satellite_site";s:11:"description";s:44:"Find if we're on an Conversr satellite site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:9:"If we are";}}s:20:"convert_guids_to_ids";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Input text";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:20:"convert_guids_to_ids";s:11:"description";s:34:"Convert GUIDs to IDs in some text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Output text";}}s:20:"set_mass_import_mode";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"doing_mass_import";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:8:"If it is";s:11:"phpdoc_name";s:17:"doing_mass_import";}}s:4:"name";s:20:"set_mass_import_mode";s:11:"description";s:36:"Set if a mass-import is in progress.";s:5:"flags";a:0:{}}s:20:"get_mass_import_mode";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_mass_import_mode";s:11:"description";s:37:"Find if a mass-import is in progress.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"If it is";}}s:19:"escapeshellarg_wrap";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"arg";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The argument.";s:11:"phpdoc_name";s:3:"arg";}}s:4:"name";s:19:"escapeshellarg_wrap";s:11:"description";s:89:"Prepare an argument for use literally in a command. Works around common PHP restrictions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"Escaped.";}}s:15:"running_locally";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"running_locally";s:11:"description";s:76:"Find whether Composr is running on a local network, rather than a live-site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:24:"If it is running locally";}}s:23:"appengine_general_guard";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"appengine_general_guard";s:11:"description";s:80:"Exit if we are running on a Google App Engine application (live or development).";s:5:"flags";a:0:{}}s:20:"appengine_live_guard";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"appengine_live_guard";s:11:"description";s:63:"Exit if we are running on a live Google App Engine application.";s:5:"flags";a:0:{}}s:22:"secure_serialized_data";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:22:"&$data Serialized data";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:16:"safe_replacement";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:67:"What to substitute if objects are contained (null: substitute null)";s:11:"phpdoc_name";s:16:"safe_replacement";}}s:4:"name";s:22:"secure_serialized_data";s:11:"description";s:57:"Check serialized data for objects, as a security measure.";s:5:"flags";a:0:{}}s:28:"update_catalogue_content_ref";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:3:{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:12:"Content type";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Old value";s:11:"phpdoc_name";s:4:"from";}i:2;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"New value";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:28:"update_catalogue_content_ref";s:11:"description";s:59:"Update a catalogue content field reference, to a new value.";s:5:"flags";a:0:{}}s:21:"cms_profile_start_for";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Identifier";s:11:"phpdoc_name";s:10:"identifier";}}s:4:"name";s:21:"cms_profile_start_for";s:11:"description";s:75:"Start a profiling block, for a specified identifier (of your own choosing).";s:5:"flags";a:0:{}}s:19:"cms_profile_end_for";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Identifier";s:11:"phpdoc_name";s:10:"identifier";}i:1;a:7:{s:4:"name";s:9:"specifics";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:90:"Longer details of what happened (e.g. a specific SQL query that ran) (null: none provided)";s:11:"phpdoc_name";s:9:"specifics";}}s:4:"name";s:19:"cms_profile_end_for";s:11:"description";s:131:"End a profiling block, for a specified identifier (of your own choosing - but you must have started it with cms_profile_start_for).";s:5:"flags";a:0:{}}s:21:"send_http_output_ping";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"send_http_output_ping";s:11:"description";s:204:"Put out some benign HTTP output.FastCGI seems to have a weird issue with 'slowish spiky process not continuing with output' - this works around it. Not ideal as would break headers in any subsequent code.";s:5:"flags";a:0:{}}s:21:"set_high_security_csp";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:25:"enable_more_open_html_for";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:388:"Allow more open HTML for a particular member ID (null: no member). It still will use the HTML blacklist functionality (unless they have even higher access already), but will remove the more restrictive whitelist functionality. Use of set_high_security_csp here is further decreasing the risk from dangerous HTML, even though the risk should be very low anyway due to the blacklist filter.";s:11:"phpdoc_name";s:25:"enable_more_open_html_for";}}s:4:"name";s:21:"set_high_security_csp";s:11:"description";s:157:"Improve security by turning on a strict CSP that only allows stuff from partner sites and disables frames and forms.Must be called before page output starts.";s:5:"flags";a:0:{}}s:23:"set_no_clickjacking_csp";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"set_no_clickjacking_csp";s:11:"description";s:55:"Set a CSP header to not allow any frames to include us.";s:5:"flags";a:0:{}}s:29:"disable_browser_xss_detection";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"disable_browser_xss_detection";s:11:"description";s:82:"Stop the web browser trying to save us, and breaking some requests in the process.";s:5:"flags";a:0:{}}s:23:"support_smart_decaching";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:25:"support_temporary_disable";s:7:"default";s:13:"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:"Support it being temporarily disabled";s:11:"phpdoc_name";s:25:"support_temporary_disable";}}s:4:"name";s:23:"support_smart_decaching";s:11:"description";s:108:"Whether smart decaching is enabled. It is slightly inefficient but makes site development easier for people.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"If smart decaching is enabled";}}s:35:"disable_smart_decaching_temporarily";a:5:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"disable_smart_decaching_temporarily";s:11:"description";s:137:"For performance reasons disable smart decaching for cases that allow it to be disabled temporarily (it does a lot of file system checks).";s:5:"flags";a:0:{}}s:27:"has_interesting_post_fields";a:6:{s:8:"filename";s:19:"sources/global3.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"has_interesting_post_fields";s:11:"description";s:122:"Find if the current request has POST fields worth considering/propagating. Very standard framework fields will be ignored.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Whether it does";}}s:13:"escape_header";a:6:{s:8:"filename";s:19:"sources/global3.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:26:"Text to insert into header";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:13:"within_quotes";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Text is between quotes";s:11:"phpdoc_name";s:13:"within_quotes";}}s:4:"name";s:13:"escape_header";s:11:"description";s:34:"Apply escaping for an HTTP header.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Escaped text";}}s:13:"init__global4";a:5:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__global4";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:26:"attach_message_site_closed";a:5:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"messages_bottom";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Where to place the message.";s:11:"phpdoc_name";s:15:"messages_bottom";}}s:4:"name";s:26:"attach_message_site_closed";s:11:"description";s:51:"Attach a message mentioning how the site is closed.";s:5:"flags";a:0:{}}s:17:"attach_message_su";a:5:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"messages_bottom";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Where to place the message.";s:11:"phpdoc_name";s:15:"messages_bottom";}}s:4:"name";s:17:"attach_message_su";s:11:"description";s:41:"Attach a message mentioning SU is active.";s:5:"flags";a:0:{}}s:26:"_save_web_resource_merging";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"resources";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"Resources (map of keys to 1), passed by reference as we alter it";s:11:"phpdoc_name";s:9:"resources";}i:1;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:8:".css .js";}i:2;a:5:{s:4:"name";s:10:"write_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:10:"Write path";s:11:"phpdoc_name";s:10:"write_path";}}s:4:"name";s:26:"_save_web_resource_merging";s:11:"description";s:36:"Save a file of merged web resources.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:21:"If the merge happened";}}s:17:"make_xhtml_strict";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"global";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:15:"Tempcode object";s:11:"phpdoc_name";s:6:"global";}}s:4:"name";s:17:"make_xhtml_strict";s:11:"description";s:75:"Take a Tempcode object and run some hackerish code to make it XHTML-strict.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"object";s:11:"description";s:38:"Tempcode object (no longer cache safe)";}}s:33:"member_personal_links_and_details";a:6:{s:8:"filename";s:19:"sources/global4.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:11:"A member ID";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:33:"member_personal_links_and_details";s:11:"description";s:42:"Get links and details related to a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:131:"A tuple: links (Tempcode), eCommerce links (Tempcode), details (Tempcode), number of unread inline personal posts or private topics";}}s:27:"handle_has_checked_recently";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"id_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:57:"Special check code (often a URL but does not need to be).";s:11:"phpdoc_name";s:7:"id_code";}}s:4:"name";s:27:"handle_has_checked_recently";s:11:"description";s:161:"Use the url_title_cache table (a bit of a hack but saved changed the DB structure) to see if a check-op was performed has been performed within the last 30 days.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the check has happened recently.";}}s:16:"cms_mb_str_split";a:6:{s:8:"filename";s:19:"sources/global4.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:6:"Input.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force unicode as on.";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:16:"cms_mb_str_split";s:11:"description";s:75:"Convert a string to an array, with utf-8 awareness where possible/required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"Output.";}}s:18:"cms_mb_chunk_split";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:4:{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:17:"The input string.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:3:"len";s:7:"default";i:76;s:11:"default_raw";s:2:"76";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The maximum chunking length.";s:11:"phpdoc_name";s:3:"len";}i:2;a:7:{s:4:"name";s:4:"glue";s:7:"default";s:2:"
";s:11:"default_raw";s:6:""\r\n"";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Split character.";s:11:"phpdoc_name";s:4:"glue";}i:3;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force unicode as on.";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:18:"cms_mb_chunk_split";s:11:"description";s:280:"Split a string into smaller chunks, with utf-8 awareness where possible/required. Can be used to split a string into smaller chunks which is useful for e.g. converting base64_encode output to match RFC 2045 semantics. It inserts end (defaults to "\r\n") every chunklen characters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:40:"The chunked version of the input string.";}}s:21:"prevent_double_submit";a:5:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:3:{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:60:"The type of activity just carried out (a language string ID)";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:1:"a";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:90:"The most important parameter of the activity (e.g. ID) (null: none / cannot match against)";s:11:"phpdoc_name";s:1:"a";}i:2;a:7:{s:4:"name";s:1:"b";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:114:"A secondary (perhaps, human readable) parameter of the activity (e.g. caption) (null: none / cannot match against)";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:21:"prevent_double_submit";s:11:"description";s:99:"Prevent double submission, by reference to recent matching admin log entries by the current member.";s:5:"flags";a:0:{}}s:7:"_log_it";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:3:{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:60:"The type of activity just carried out (a language string ID)";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:1:"a";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:67:"The most important parameter of the activity (e.g. ID) (null: none)";s:11:"phpdoc_name";s:1:"a";}i:2;a:7:{s:4:"name";s:1:"b";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:91:"A secondary (perhaps, human readable) parameter of the activity (e.g. caption) (null: none)";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:7:"_log_it";s:11:"description";s:14:"Log an action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:33:"Log ID (null: did not save a log)";}}s:13:"generate_guid";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"generate_guid";s:11:"description";s:16:"Generate a GUID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"A GUID";}}s:26:"find_normative_performance";a:6:{s:8:"filename";s:19:"sources/global4.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"find_normative_performance";s:11:"description";s:132:"Find a percentage performance figure relative to a Late 2014 iMac (at the time of writing this is the lead developers main machine).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:18:"Performance figure";}}s:22:"init__google_appengine";a:5:{s:8:"filename";s:28:"sources/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"init__google_appengine";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"_roll_gae_redirect";a:5:{s:8:"filename";s:28:"sources/google_appengine.php";s:10:"parameters";a:2:{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:20:"URL segments matched";s:11:"phpdoc_name";s:7:"matches";}i:1;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Redirect pattern";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:18:"_roll_gae_redirect";s:11:"description";s:86:"Find whether the current user is an admin, from the perspective of the Google Console.";s:5:"flags";a:0:{}}s:12:"gae_is_admin";a:6:{s:8:"filename";s:28:"sources/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"gae_is_admin";s:11:"description";s:86:"Find whether the current user is an admin, from the perspective of the Google Console.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:21:"Current user is admin";}}s:12:"gae_debugger";a:5:{s:8:"filename";s:28:"sources/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"gae_debugger";s:11:"description";s:72:"Tick function for stepping through GAE code, using ?gae_stop=.";s:5:"flags";a:0:{}}s:20:"gae_optimistic_cache";a:5:{s:8:"filename";s:28:"sources/google_appengine.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"enabled";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the cache is enabled";s:11:"phpdoc_name";s:7:"enabled";}}s:4:"name";s:20:"gae_optimistic_cache";s:11:"description";s:231:"Enable/Disable GAE optimistic cache, meaning it avoids need to check the Cloud Storage if a file is updated.We only set this to enabled if we are sure the persistent cache would receive a flush if the referenced file changed state.";s:5:"flags";a:0:{}}s:25:"bump_member_group_timeout";a:5:{s:8:"filename";s:33:"sources/group_member_timeouts.php";s:10:"parameters";a:4:{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:34:"The member going in the usergroup.";s:11:"phpdoc_name";s:9:"member_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:14:"The usergroup.";s:11:"phpdoc_name";s:8:"group_id";}i:2;a:5:{s:4:"name";s:11:"num_minutes";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:58:"The number of minutes (may be negative to take time away).";s:11:"phpdoc_name";s:11:"num_minutes";}i:3;a:7:{s:4:"name";s:24:"prefer_for_primary_group";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:376:"Whether to put the member into as a primary group if this is a new temporary membership (it is recommended to NOT use this, since we don't track the source group and hence on expiry the member is put back to the first default group - but also generally you probably don't want to box yourself in with moving people's primary group, it ties your future flexibility down a lot).";s:11:"phpdoc_name";s:24:"prefer_for_primary_group";}}s:4:"name";s:25:"bump_member_group_timeout";s:11:"description";s:89:"Put a member into a usergroup temporarily / extend such a temporary usergroup membership.";s:5:"flags";a:0:{}}s:24:"set_member_group_timeout";a:5:{s:8:"filename";s:33:"sources/group_member_timeouts.php";s:10:"parameters";a:4:{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:34:"The member going in the usergroup.";s:11:"phpdoc_name";s:9:"member_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:14:"The usergroup.";s:11:"phpdoc_name";s:8:"group_id";}i:2;a:5:{s:4:"name";s:9:"timestamp";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:21:"The expiry timestamp.";s:11:"phpdoc_name";s:9:"timestamp";}i:3;a:7:{s:4:"name";s:24:"prefer_for_primary_group";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:376:"Whether to put the member into as a primary group if this is a new temporary membership (it is recommended to NOT use this, since we don't track the source group and hence on expiry the member is put back to the first default group - but also generally you probably don't want to box yourself in with moving people's primary group, it ties your future flexibility down a lot).";s:11:"phpdoc_name";s:24:"prefer_for_primary_group";}}s:4:"name";s:24:"set_member_group_timeout";s:11:"description";s:272:"Put a member into a usergroup temporarily. Note that if people are subsequently removed from the usergroup they won't be put back in; this allows the admin to essentially cancel the subscription - however, if it is then extended, they do keep the time they had before too.";s:5:"flags";a:0:{}}s:23:"cleanup_member_timeouts";a:5:{s:8:"filename";s:33:"sources/group_member_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"cleanup_member_timeouts";s:11:"description";s:41:"Handle auto-removal of timed-out members.";s:5:"flags";a:0:{}}s:39:"init__hooks__modules__admin_import__aef";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"init__hooks__modules__admin_import__aef";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"fake_levenshtein";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/html_site.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:6:"string";s:11:"description";s:13:"First string.";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:6:"string";s:11:"description";s:14:"Second string.";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:16:"fake_levenshtein";s:11:"description";s:101:"Calculate Levenshtein distance between two strings, but work past the PHP function's character limit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"Distance.";}}s:40:"init__hooks__modules__admin_import__mybb";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"init__hooks__modules__admin_import__mybb";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:42:"init__hooks__modules__admin_import__phpbb2";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"init__hooks__modules__admin_import__phpbb2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:42:"init__hooks__modules__admin_import__phpbb3";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"init__hooks__modules__admin_import__phpbb3";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:47:"init__hooks__modules__admin_import__shared__ipb";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"init__hooks__modules__admin_import__shared__ipb";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:39:"init__hooks__modules__admin_import__smf";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"init__hooks__modules__admin_import__smf";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:40:"init__hooks__modules__admin_import__smf2";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"init__hooks__modules__admin_import__smf2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:39:"init__hooks__modules__admin_import__vb3";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"init__hooks__modules__admin_import__vb3";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:41:"init__hooks__modules__admin_import__wowbb";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"init__hooks__modules__admin_import__wowbb";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:30:"generate_catalogue_entry_title";a:6:{s:8:"filename";s:60:"sources/hooks/systems/content_meta_aware/catalogue_entry.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"url_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"The URL parts to search from.";s:11:"phpdoc_name";s:9:"url_parts";}i:1;a:7:{s:4:"name";s:17:"resource_fs_style";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether to get the field title using resource-fs style.";s:11:"phpdoc_name";s:17:"resource_fs_style";}}s:4:"name";s:30:"generate_catalogue_entry_title";s:11:"description";s:29:"Find a catalogue entry title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The field title.";}}s:30:"generate_catalogue_thumb_field";a:6:{s:8:"filename";s:60:"sources/hooks/systems/content_meta_aware/catalogue_entry.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"url_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"The URL parts to search from.";s:11:"phpdoc_name";s:9:"url_parts";}}s:4:"name";s:30:"generate_catalogue_thumb_field";s:11:"description";s:33:"Find a catalogue entry thumbnail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The field title.";}}s:21:"handle_product_orders";a:5:{s:8:"filename";s:47:"sources/hooks/systems/ecommerce/cart_orders.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:1;a:5:{s:4:"name";s:7:"details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Details of the product.";s:11:"phpdoc_name";s:7:"details";}i:2;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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:3;a:6:{s:4:"name";s:14:"payment_status";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The status this transaction is telling of";s:11:"phpdoc_name";s:14:"payment_status";s:3:"set";s:38:"Pending Completed SModified SCancelled";}i:4;a:5:{s:4:"name";s:6:"txn_id";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The transaction ID";s:11:"phpdoc_name";s:6:"txn_id";}}s:4:"name";s:21:"handle_product_orders";s:11:"description";s:46:"Handling shopping orders and dispatch thereof.";s:5:"flags";a:0:{}}s:22:"handle_catalogue_items";a:5:{s:8:"filename";s:51:"sources/hooks/systems/ecommerce/catalogue_items.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:18:"Purchase/Order ID.";s:11:"phpdoc_name";s:8:"entry_id";}i:1;a:5:{s:4:"name";s:7:"details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Details of product.";s:11:"phpdoc_name";s:7:"details";}}s:4:"name";s:22:"handle_catalogue_items";s:11:"description";s:53:"Update order status,transaction ID after transaction.";s:5:"flags";a:0:{}}s:29:"handle_usergroup_subscription";a:5:{s:8:"filename";s:45:"sources/hooks/systems/ecommerce/usergroup.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:11:"purchase_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The purchase ID.";s:11:"phpdoc_name";s:11:"purchase_id";}i:1;a:5:{s:4:"name";s:7:"details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Details of the product.";s:11:"phpdoc_name";s:7:"details";}i:2;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:21:"The product codename.";s:11:"phpdoc_name";s:9:"type_code";}i:3;a:6:{s:4:"name";s:14:"payment_status";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The status this transaction is telling of";s:11:"phpdoc_name";s:14:"payment_status";s:3:"set";s:38:"Pending Completed SModified SCancelled";}i:4;a:5:{s:4:"name";s:6:"txn_id";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The transaction ID";s:11:"phpdoc_name";s:6:"txn_id";}}s:4:"name";s:29:"handle_usergroup_subscription";s:11:"description";s:37:"Handling of a usergroup subscription.";s:5:"flags";a:0:{}}s:18:"_symbol_image_dims";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"_symbol_image_dims";s:11:"description";s:46:"Render an 'IMAGE_WIDTH'/'IMAGE_HEIGHT' symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"A pair: Image dimensions";}}s:17:"_symbol_thumbnail";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Symbol parameters";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"_symbol_thumbnail";s:11:"description";s:28:"Render a 'THUMBNAIL' symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Rendered symbol";}}s:18:"get_max_image_size";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:19:"consider_php_limits";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to consider limitations in PHP's configuration";s:11:"phpdoc_name";s:19:"consider_php_limits";}}s:4:"name";s:18:"get_max_image_size";s:11:"description";s:64:"Get the maximum allowed image size, as set in the configuration.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:32:"The maximum image size, in bytes";}}s:14:"do_image_thumb";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:7:{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:30:"The URL to the image thumbnail";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:7:"caption";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:50:"The caption for the thumbnail (string or Tempcode)";s:11:"phpdoc_name";s:7:"caption";}i:2;a:7:{s:4:"name";s:10:"js_tooltip";s:7:"default";s:13:"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 to use a JS tooltip. Forcibly set to true if you pass Tempcode";s:11:"phpdoc_name";s:10:"js_tooltip";}i:3;a:7:{s:4:"name";s:20:"is_thumbnail_already";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:60:"Whether already a thumbnail (if not, function will make one)";s:11:"phpdoc_name";s:20:"is_thumbnail_already";}i:4;a:7:{s:4:"name";s:5:"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:38:"Thumbnail width to use (null: default)";s:11:"phpdoc_name";s:5:"width";}i:5;a:7:{s:4:"name";s:6:"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:39:"Thumbnail height to use (null: default)";s:11:"phpdoc_name";s:6:"height";}i:6;a:7:{s:4:"name";s:17:"only_make_smaller";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:109:"Whether to apply a 'never make the image bigger' rule for thumbnail creation (would affect very small images)";s:11:"phpdoc_name";s:17:"only_make_smaller";}}s:4:"name";s:14:"do_image_thumb";s:11:"description";s:40:"Get the Tempcode for an image thumbnail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The thumbnail";}}s:16:"ensure_thumbnail";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"full_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:54:"The full URL to the image which will-be/is thumbnailed";s:11:"phpdoc_name";s:8:"full_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:50:"The URL to the thumbnail (blank: no thumbnail yet)";s:11:"phpdoc_name";s:9:"thumb_url";}i:2;a:5:{s:4:"name";s:9:"thumb_dir";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:116:"The directory, relative to the Composr install's uploads directory, where the thumbnails are stored. MINUS "_thumbs"";s:11:"phpdoc_name";s:9:"thumb_dir";}i:3;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:73:"The name of the table that is storing what we are doing the thumbnail for";s:11:"phpdoc_name";s:5:"table";}i:4;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:78:"The ID of the table record that is storing what we are doing the thumbnail for";s:11:"phpdoc_name";s:2:"id";}i:5;a:7:{s:4:"name";s:16:"thumb_field_name";s:7:"default";s:9:"thumb_url";s:11:"default_raw";s:11:"'thumb_url'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:54:"The name of the table field where thumbnails are saved";s:11:"phpdoc_name";s:16:"thumb_field_name";}i:6;a:7:{s:4:"name";s:11:"thumb_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:42:"The thumbnail width to use (null: default)";s:11:"phpdoc_name";s:11:"thumb_width";}i:7;a:7:{s:4:"name";s:17:"only_make_smaller";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:109:"Whether to apply a 'never make the image bigger' rule for thumbnail creation (would affect very small images)";s:11:"phpdoc_name";s:17:"only_make_smaller";}}s:4:"name";s:16:"ensure_thumbnail";s:11:"description";s:121:"Take some image/thumbnail info, and if needed make and caches a thumbnail, and return a thumb url whatever the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:24:"The URL to the thumbnail";}}s:13:"convert_image";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the image to resize";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:"PATH";s:11:"description";s:75:"The file path (including filename) to where the resized image will be saved";s:11:"phpdoc_name";s:2:"to";}i:2;a:5:{s:4:"name";s:5:"width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:79:"The maximum width we want our new image to be (-1 means "don't factor this in")";s:11:"phpdoc_name";s:5:"width";}i:3;a:5:{s:4:"name";s:6:"height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"The maximum height we want our new image to be (-1 means "don't factor this in")";s:11:"phpdoc_name";s:6:"height";}i:4;a:7:{s:4:"name";s:9:"box_width";s:7:"default";i:-1;s:11:"default_raw";s:2:"-1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:173:"This is only considered if both $width and $height are -1. If set, it will fit the image to a box of this dimension (suited for resizing both landscape and portraits fairly)";s:11:"phpdoc_name";s:9:"box_width";}i:5;a:7:{s:4:"name";s:13:"exit_on_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to exit Composr if an error occurs";s:11:"phpdoc_name";s:13:"exit_on_error";}i:6;a:7:{s:4:"name";s:4:"ext2";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:62:"The file extension to save with (null: same as our input file)";s:11:"phpdoc_name";s:4:"ext2";}i:7;a:7:{s:4:"name";s:10:"using_path";s:7:"default";s:13:"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:"Whether $from was in fact a path, not a URL";s:11:"phpdoc_name";s:10:"using_path";}i:8;a:7:{s:4:"name";s:17:"only_make_smaller";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:109:"Whether to apply a 'never make the image bigger' rule for thumbnail creation (would affect very small images)";s:11:"phpdoc_name";s:17:"only_make_smaller";}i:9;a:7:{s:4:"name";s:13:"thumb_options";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:135:"This optional parameter allows us to specify cropping or padding for the image. See comments in the function. (null: no details passed)";s:11:"phpdoc_name";s:13:"thumb_options";}}s:4:"name";s:13:"convert_image";s:11:"description";s:67:"Resize an image to the specified size, but retain the aspect ratio.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:7:"Success";}}s:8:"is_image";a:6:{s:8:"filename";s:18:"sources/images.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:31:"A URL or file path to the image";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:8:"mime_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:25:"Whether to check mime too";s:11:"phpdoc_name";s:8:"mime_too";}}s:4:"name";s:8:"is_image";s:11:"description";s:78:"Find whether the image specified is actually an image, based on file extension";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:60:"Whether the string pointed to a file appeared to be an image";}}s:17:"is_saveable_image";a:6:{s:8:"filename";s:18:"sources/images.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:31:"A URL or file path to the image";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:17:"is_saveable_image";s:11:"description";s:114:"Use the image extension to determine if the specified image is of a format (extension) saveable by Composr or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether the string pointed to a file that appeared to be a saveable image";}}s:8:"is_video";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:3:{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:31:"A URL or file path to the video";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:91:"Whether there are admin privileges, to render dangerous media types (client-side risk only)";s:11:"phpdoc_name";s:8:"as_admin";}i:2;a:7:{s:4:"name";s:18:"must_be_true_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:118:"Whether it really must be an actual video/audio, not some other kind of rich media which we may render in a video spot";s:11:"phpdoc_name";s:18:"must_be_true_video";}}s:4:"name";s:8:"is_video";s:11:"description";s:79:"Find whether the video specified is actually a 'video', based on file extension";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether the string pointed to a file appeared to be a video";}}s:8:"is_audio";a:6:{s:8:"filename";s:18:"sources/images.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:31:"A URL or file path to the video";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:91:"Whether there are admin privileges, to render dangerous media types (client-side risk only)";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:8:"is_audio";s:11:"description";s:79:"Find whether the video specified is actually a 'video', based on file extension";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:65:"Whether the string pointed to a file appeared to be an audio file";}}s:8:"is_media";a:6:{s:8:"filename";s:18:"sources/images.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:31:"A URL or file path to the video";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:91:"Whether there are admin privileges, to render dangerous media types (client-side risk only)";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:8:"is_media";s:11:"description";s:79:"Find whether the video specified is actually a 'video', based on file extension";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:65:"Whether the string pointed to a file appeared to be an audio file";}}s:28:"get_allowed_image_file_types";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"get_allowed_image_file_types";s:11:"description";s:66:"Get a comma-separated list of allowed file types for audio upload.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Allowed file types";}}s:28:"get_allowed_video_file_types";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"get_allowed_video_file_types";s:11:"description";s:66:"Get a comma-separated list of allowed file types for video upload.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Allowed file types";}}s:28:"get_allowed_audio_file_types";a:6:{s:8:"filename";s:18:"sources/images.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"get_allowed_audio_file_types";s:11:"description";s:66:"Get a comma-separated list of allowed file types for audio upload.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Allowed file types";}}s:17:"_ensure_thumbnail";a:6:{s:8:"filename";s:19:"sources/images2.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"full_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:54:"The full URL to the image which will-be/is thumbnailed";s:11:"phpdoc_name";s:8:"full_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:50:"The URL to the thumbnail (blank: no thumbnail yet)";s:11:"phpdoc_name";s:9:"thumb_url";}i:2;a:5:{s:4:"name";s:9:"thumb_dir";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:116:"The directory, relative to the Composr install's uploads directory, where the thumbnails are stored. MINUS "_thumbs"";s:11:"phpdoc_name";s:9:"thumb_dir";}i:3;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:73:"The name of the table that is storing what we are doing the thumbnail for";s:11:"phpdoc_name";s:5:"table";}i:4;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:78:"The ID of the table record that is storing what we are doing the thumbnail for";s:11:"phpdoc_name";s:2:"id";}i:5;a:7:{s:4:"name";s:16:"thumb_field_name";s:7:"default";s:9:"thumb_url";s:11:"default_raw";s:11:"'thumb_url'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:54:"The name of the table field where thumbnails are saved";s:11:"phpdoc_name";s:16:"thumb_field_name";}i:6;a:7:{s:4:"name";s:11:"thumb_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:42:"The thumbnail width to use (null: default)";s:11:"phpdoc_name";s:11:"thumb_width";}i:7;a:7:{s:4:"name";s:17:"only_make_smaller";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:109:"Whether to apply a 'never make the image bigger' rule for thumbnail creation (would affect very small images)";s:11:"phpdoc_name";s:17:"only_make_smaller";}}s:4:"name";s:17:"_ensure_thumbnail";s:11:"description";s:30:"(Helper for ensure_thumbnail).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:24:"The URL to the thumbnail";}}s:14:"_convert_image";a:6:{s:8:"filename";s:19:"sources/images2.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the image to resize";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:"PATH";s:11:"description";s:75:"The file path (including filename) to where the resized image will be saved";s:11:"phpdoc_name";s:2:"to";}i:2;a:5:{s:4:"name";s:5:"width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:79:"The maximum width we want our new image to be (-1 means "don't factor this in")";s:11:"phpdoc_name";s:5:"width";}i:3;a:5:{s:4:"name";s:6:"height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"The maximum height we want our new image to be (-1 means "don't factor this in")";s:11:"phpdoc_name";s:6:"height";}i:4;a:7:{s:4:"name";s:9:"box_width";s:7:"default";i:-1;s:11:"default_raw";s:2:"-1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:173:"This is only considered if both $width and $height are -1. If set, it will fit the image to a box of this dimension (suited for resizing both landscape and portraits fairly)";s:11:"phpdoc_name";s:9:"box_width";}i:5;a:7:{s:4:"name";s:13:"exit_on_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to exit Composr if an error occurs";s:11:"phpdoc_name";s:13:"exit_on_error";}i:6;a:7:{s:4:"name";s:4:"ext2";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:62:"The file extension to save with (null: same as our input file)";s:11:"phpdoc_name";s:4:"ext2";}i:7;a:7:{s:4:"name";s:10:"using_path";s:7:"default";s:13:"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:"Whether $from was in fact a path, not a URL";s:11:"phpdoc_name";s:10:"using_path";}i:8;a:7:{s:4:"name";s:17:"only_make_smaller";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:109:"Whether to apply a 'never make the image bigger' rule for thumbnail creation (would affect very small images)";s:11:"phpdoc_name";s:17:"only_make_smaller";}i:9;a:7:{s:4:"name";s:13:"thumb_options";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:135:"This optional parameter allows us to specify cropping or padding for the image. See comments in the function. (null: no details passed)";s:11:"phpdoc_name";s:13:"thumb_options";}}s:4:"name";s:14:"_convert_image";s:11:"description";s:27:"(Helper for convert_image).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:7:"Success";}}s:22:"check_memory_limit_for";a:6:{s:8:"filename";s:19:"sources/images2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"file_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:35:"The file path we are trying to load";s:11:"phpdoc_name";s:9:"file_path";}i:1;a:7:{s:4:"name";s:13:"exit_on_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to exit Composr if an error occurs";s:11:"phpdoc_name";s:13:"exit_on_error";}}s:4:"name";s:22:"check_memory_limit_for";s:11:"description";s:57:"Check we can load the given file, given our memory limit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:16:"find_imagemagick";a:6:{s:8:"filename";s:19:"sources/images2.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"find_imagemagick";s:11:"description";s:29:"Find the path to imagemagick.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?PATH";s:11:"description";s:37:"Path to imagemagick (null: not found)";}}s:22:"adjust_pic_orientation";a:6:{s:8:"filename";s:19:"sources/images2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"GD image resource";s:11:"phpdoc_name";s:6:"source";}i:1;a:5:{s:4:"name";s:4:"exif";s:3:"ref";b:0;s:4:"type";s:6:"~array";s:11:"description";s:36:"EXIF details (false: could not load)";s:11:"phpdoc_name";s:4:"exif";}}s:4:"name";s:22:"adjust_pic_orientation";s:11:"description";s:195:"Adjust an image to take into account EXIF rotation.Based on a comment in:http://stackoverflow.com/questions/3657023/how-to-detect-shot-angle-of-photo-and-auto-rotate-for-website-display-like-desk";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:61:"A pair: Adjusted GD image resource, Whether a change was made";}}s:18:"remove_white_edges";a:6:{s:8:"filename";s:19:"sources/images2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"GD image resource";s:11:"phpdoc_name";s:6:"source";}}s:4:"name";s:18:"remove_white_edges";s:11:"description";s:45:"Remove white/transparent edges from an image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"resource";s:11:"description";s:13:"Trimmed image";}}s:14:"get_gd_version";a:6:{s:8:"filename";s:19:"sources/images2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_gd_version";s:11:"description";s:115:"Get the version number of GD on the system. It should only be called if GD is known to be on the system, and in use";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:27:"The version of GD installed";}}s:12:"png_compress";a:5:{s:8:"filename";s:22:"sources/images_png.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:10:"File path.";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:5:"lossy";s:7:"default";s:13:"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 do a lossy convert.";s:11:"phpdoc_name";s:5:"lossy";}}s:4:"name";s:12:"png_compress";s:11:"description";s:84:"Try to further compress a PNG file, via palette tricks and maximum gzip compression.";s:5:"flags";a:0:{}}s:12:"init__import";a:5:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__import";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"load_import_deps";a:5:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"load_import_deps";s:11:"description";s:41:"Load lots that the importer needs to run.";s:5:"flags";a:0:{}}s:14:"cns_over_local";a:5:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"cns_over_local";s:11:"description";s:154:"Switch Conversr to run over the local site-DB connection. Useful when importing and our forum driver is actually connected to a forum other than Conversr.";s:5:"flags";a:0:{}}s:12:"cns_over_msn";a:5:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"cns_over_msn";s:11:"description";s:20:"Undo cns_over_local.";s:5:"flags";a:0:{}}s:19:"import_id_remap_get";a:6:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:3:{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:87:"An importation type code, from those Composr has defined (E.g. 'download', 'news', ...)";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:6:"id_old";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The source (old, original) ID of the mapping";s:11:"phpdoc_name";s:6:"id_old";}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:39:"If it is okay to fail to find a mapping";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:19:"import_id_remap_get";s:11:"description";s:148:"Returns the NEW ID of an imported old ID, for the specified importation type. Whether it returns null or gives an error message depends on $fail_ok.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:28:"The new ID (null: not found)";}}s:24:"import_check_if_imported";a:6:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:2:{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:56:"An importation type code, from those Composr has defined";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:6:"id_old";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The source (old, original) ID of the mapping";s:11:"phpdoc_name";s:6:"id_old";}}s:4:"name";s:24:"import_check_if_imported";s:11:"description";s:87:"Check to see if the given ID of the given type has been imported (if it has a mapping).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether it has been imported";}}s:19:"import_id_remap_put";a:5:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:3:{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:56:"An importation type code, from those Composr has defined";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:6:"id_old";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The source (old, original) ID of the mapping";s:11:"phpdoc_name";s:6:"id_old";}i:2;a:5:{s:4:"name";s:6:"id_new";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:39:"The destination (new) ID of the mapping";s:11:"phpdoc_name";s:6:"id_new";}}s:4:"name";s:19:"import_id_remap_put";s:11:"description";s:291:"Set the NEW ID for an imported old ID, which also tacitly indicates completion of importing an item of some type of content. This mapping (old ID to new ID) may be used later for importing related content that requires the new identifier. import_id_remap_get is the inverse of this function.";s:5:"flags";a:0:{}}s:19:"add_wordfilter_word";a:5:{s:8:"filename";s:18:"sources/import.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:30:"Word to add to the word-filter";s:11:"phpdoc_name";s:4:"word";}i:1;a:7:{s:4:"name";s:11:"replacement";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:35:"Replacement (blank: block entirely)";s:11:"phpdoc_name";s:11:"replacement";}i:2;a:7:{s:4:"name";s:6:"substr";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:36:"Whether to perform a substring match";s:11:"phpdoc_name";s:6:"substr";}}s:4:"name";s:19:"add_wordfilter_word";s:11:"description";s:30:"Add a word to the word-filter.";s:5:"flags";a:0:{}}s:24:"find_derivative_filename";a:6:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:3:{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:9:"Directory";s:11:"phpdoc_name";s:3:"dir";}i:1;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Preferred filename";s:11:"phpdoc_name";s:4:"file";}i:2;a:7:{s:4:"name";s:8:"shun_gif";s:7:"default";s:13:"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 GIF files are made as PNG files";s:11:"phpdoc_name";s:8:"shun_gif";}}s:4:"name";s:24:"find_derivative_filename";s:11:"description";s:76:"Find a similar but non conflicting filename to $file in the given directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Filename to use";}}s:15:"i_force_refresh";a:5:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"i_force_refresh";s:11:"description";s:54:"Force a page refresh due to maximum execution timeout.";s:5:"flags";a:0:{}}s:19:"post_import_cleanup";a:5:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"post_import_cleanup";s:11:"description";s:41:"Load lots that the importer needs to run.";s:5:"flags";a:0:{}}s:30:"set_database_index_maintenance";a:5:{s:8:"filename";s:18:"sources/import.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"on";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether index maintenance should be on.";s:11:"phpdoc_name";s:2:"on";}}s:4:"name";s:30:"set_database_index_maintenance";s:11:"description";s:60:"Turn index maintenance off to help speed import, or back on.";s:5:"flags";a:0:{}}s:23:"incoming_uploads_script";a:5:{s:8:"filename";s:28:"sources/incoming_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"incoming_uploads_script";s:11:"description";s:43:"Function to process the file upload process";s:5:"flags";a:0:{}}s:17:"clear_old_uploads";a:5:{s:8:"filename";s:28:"sources/incoming_uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"clear_old_uploads";s:11:"description";s:57:"Function to clear old uploads, that are older then 2 days";s:5:"flags";a:0:{}}s:18:"init__input_filter";a:5:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"init__input_filter";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:24:"check_input_field_string";a:5:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:3:{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:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:19:"The value retrieved";s:11:"phpdoc_name";s:3:"val";}i:2;a:7:{s:4:"name";s:6:"posted";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:62:"Whether the parameter is a POST parameter (null: undetermined)";s:11:"phpdoc_name";s:6:"posted";}}s:4:"name";s:24:"check_input_field_string";s:11:"description";s:34:"Check an input field isn't 'evil'.";s:5:"flags";a:0:{}}s:18:"check_posted_field";a:5:{s:8:"filename";s:24:"sources/input_filter.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:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}i:1;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 retrieved";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:18:"check_posted_field";s:11:"description";s:132:"Check a posted field isn't part of a malicious CSRF attack via referer checking (we do more checks for post fields than get fields).";s:5:"flags";a:0:{}}s:34:"strip_url_to_representative_domain";a:6:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:1:{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:7:"The URL";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:34:"strip_url_to_representative_domain";s:11:"description";s:69:"Convert a full URL to a domain name we will consider this a trust on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The domain";}}s:25:"get_allowed_partner_sites";a:6:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_allowed_partner_sites";s:11:"description";s:61:"Find partner sites allowed to do cross-domain requests to us.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"Partner domain names";}}s:34:"hard_filter_input_data__filesystem";a:5:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:34:"hard_filter_input_data__filesystem";s:11:"description";s:169:"Filter input data for safety within potential filesystem calls.Only called for non-privileged users, filters/alters rather than blocks, due to false-positive likelihood.";s:5:"flags";a:0:{}}s:40:"hard_filter_input_data__dynamic_firewall";a:5:{s:8:"filename";s:24:"sources/input_filter.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:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:19:"The value retrieved";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:40:"hard_filter_input_data__dynamic_firewall";s:11:"description";s:46:"Filter data according to the dynamic firewall.";s:5:"flags";a:0:{}}s:28:"hard_filter_input_data__html";a:5:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:3:"val";}i:1;a:7:{s:4:"name";s:4:"lite";s:7:"default";s:13:"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:"Do a lite-check if we're not sure this is even actually HTML";s:11:"phpdoc_name";s:4:"lite";}}s:4:"name";s:28:"hard_filter_input_data__html";s:11:"description";s:211:"Filter input data for safety within frontend markup, taking account of HTML/JavaScript/CSS/embed attacks.Only called for non-privileged users, filters/alters rather than blocks, due to false-positive likelihood.";s:5:"flags";a:0:{}}s:25:"filter_form_field_default";a:6:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:3:{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:25:"The name of the parameter";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:47:"The current value of the parameter (null: none)";s:11:"phpdoc_name";s:3:"val";}i:2;a:7:{s:4:"name";s:4:"live";s:7:"default";s:13:"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 it is running live rather than from some hard-coded value";s:11:"phpdoc_name";s:4:"live";}}s:4:"name";s:25:"filter_form_field_default";s:11:"description";s:71:"Filter to alter form field values based on fields.xml. Usually a no-op.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The filtered value of the parameter";}}s:27:"make_sentence_case_callback";a:6:{s:8:"filename";s:24:"sources/input_filter.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:27:"make_sentence_case_callback";s:11:"description";s:45:"preg_replace callback to apply sentence case.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"De-shouted string";}}s:16:"deshout_callback";a:6:{s:8:"filename";s:24:"sources/input_filter.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:16:"deshout_callback";s:11:"description";s:39:"preg_replace callback to de-shout text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"De-shouted string";}}s:23:"load_field_restrictions";a:6:{s:8:"filename";s:24:"sources/input_filter.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"this_page";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:"The page name scoped for (null: current page)";s:11:"phpdoc_name";s:9:"this_page";}i:1;a:7:{s:4:"name";s:9:"this_type";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:"The page type scoped for (null: current type)";s:11:"phpdoc_name";s:9:"this_type";}}s:4:"name";s:23:"load_field_restrictions";s:11:"description";s:50:"Find all restrictions that apply to our page/type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"List of fields, each of which is a map (restriction => attributes)";}}s:29:"modsecurity_workaround_enable";a:5:{s:8:"filename";s:26:"sources/input_filter_2.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"modsecurity_workaround_enable";s:11:"description";s:164:"Enable the ModSecurity workaround on the PHP-side.It also needs enabling on the HTML-side.Doesn't support more than one level of list nesting, or associative arrays";s:5:"flags";a:0:{}}s:29:"rescue_shortened_post_request";a:5:{s:8:"filename";s:26:"sources/input_filter_2.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"rescue_shortened_post_request";s:11:"description";s:187:"Detect if the POST request was shortened due to a limitation.If we're staff, try and fix it. If we're not staff, warn about it (as fixing it would subvert the reason for the restriction).";s:5:"flags";a:0:{}}s:21:"array_count_recursive";a:6:{s:8:"filename";s:26:"sources/input_filter_2.php";s:10:"parameters";a:1:{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:9:"The array";s:11:"phpdoc_name";s:3:"arr";}}s:4:"name";s:21:"array_count_recursive";s:11:"description";s:49:"Count how many elements in an array, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"The count";}}s:22:"parse_raw_http_request";a:6:{s:8:"filename";s:26:"sources/input_filter_2.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"parse_raw_http_request";s:11:"description";s:148:"Parse raw HTTP request data.Based on https://gist.github.com/chlab/4283560Doesn't support more than one level of list nesting, or associative arrays";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:58:"Associative array of request data (null: could not rescue)";}}s:34:"_parse_raw_http_request_urlencoded";a:6:{s:8:"filename";s:26:"sources/input_filter_2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:4:"Data";s:11:"phpdoc_name";s:5:"input";}}s:4:"name";s:34:"_parse_raw_http_request_urlencoded";s:11:"description";s:207:"Parse raw HTTP request data in URL encoding format (application/x-www-form-urlencoded).Based on https://gist.github.com/chlab/4283560Doesn't support more than one level of list nesting, or associative arrays";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:58:"Associative array of request data (null: could not rescue)";}}s:33:"_parse_raw_http_request_multipart";a:6:{s:8:"filename";s:26:"sources/input_filter_2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:4:"Data";s:11:"phpdoc_name";s:5:"input";}i:1;a:5:{s:4:"name";s:8:"boundary";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Multi-part boundary";s:11:"phpdoc_name";s:8:"boundary";}}s:4:"name";s:33:"_parse_raw_http_request_multipart";s:11:"description";s:190:"Parse raw HTTP request data in multipart format (multipart/form-data).Based on https://gist.github.com/chlab/4283560Doesn't support more than one level of list nesting, or associative arrays";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:58:"Associative array of request data (null: could not rescue)";}}s:15:"get_chmod_array";a:6:{s:8:"filename";s:24:"sources/inst_special.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:7:"ID_TEXT";s:11:"description";s:15:"Language to use";s:11:"phpdoc_name";s:4:"lang";}i:1;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:59:"Get the list of files that need CHmodding for write access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of files";}}s:13:"reprocess_url";a:6:{s:8:"filename";s:22:"sources/integrator.php";s:10:"parameters";a:2:{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:32:"The URL that we're operating on.";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:18:"operation_base_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:46:"We open up linked URLs under this recursively.";s:11:"phpdoc_name";s:18:"operation_base_url";}}s:4:"name";s:13:"reprocess_url";s:11:"description";s:133:"Take a URL and process it to make a hard include. We'll get the HTML and we'll also load up some global stuff for 'do_header' to use.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:78:"The cleaned up contents at the URL, set up for the recursive integrator usage.";}}s:11:"json_encode";a:6:{s:8:"filename";s:16:"sources/json.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:59:"The value being encoded. Can be any type except a resource.";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:11:"json_encode";s:11:"description";s:43:"Returns the JSON representation of a value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Encoded data";}}s:11:"json_decode";a:6:{s:8:"filename";s:16:"sources/json.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"json";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The JSON string being decoded.";s:11:"phpdoc_name";s:4:"json";}i:1;a:7:{s:4:"name";s:5:"assoc";s:7:"default";s:13:"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 returned objects will be converted into associative arrays.";s:11:"phpdoc_name";s:5:"assoc";}}s:4:"name";s:11:"json_decode";s:11:"description";s:22:"Decodes a JSON string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~mixed";s:11:"description";s:27:"Decoded data (false: error)";}}s:10:"init__lang";a:5:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"init__lang";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:28:"lang_load_runtime_processing";a:5:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"lang_load_runtime_processing";s:11:"description";s:30:"Load language processing data.";s:5:"flags";a:0:{}}s:7:"do_lang";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The language string ID";s:11:"phpdoc_name";s:8:"codename";}i:1;a:7:{s:4:"name";s:10:"parameter1";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:68:"The first parameter [string or Tempcode] (replaces {1}) (null: none)";s:11:"phpdoc_name";s:10:"parameter1";}i:2;a:7:{s:4:"name";s:10:"parameter2";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:69:"The second parameter [string or Tempcode] (replaces {2}) (null: none)";s:11:"phpdoc_name";s:10:"parameter2";}i:3;a:7:{s:4:"name";s:10:"parameter3";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:131:"The third parameter (replaces {3}). May be an array of [of string or Tempcode], to allow any number of additional args (null: none)";s:11:"phpdoc_name";s:10:"parameter3";}i:4;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:14:"?LANGUAGE_NAME";s:11:"description";s:42:"The language to use (null: users language)";s:11:"phpdoc_name";s:4:"lang";}i:5;a:7:{s:4:"name";s:14:"require_result";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to cause Composr to exit if the lookup does not succeed";s:11:"phpdoc_name";s:14:"require_result";}}s:4:"name";s:7:"do_lang";s:11:"description";s:118:"Get the human-readable form of a language string ID.Further documentation: https://www.youtube.com/watch?v=rinz9Avvq6A";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:95:"The human-readable content (null: not found). String normally. Tempcode if Tempcode parameters.";}}s:13:"fallback_lang";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"fallback_lang";s:11:"description";s:370:"This function is called when no other language works, and it will return the original default language - 'EN'. You may change this to another language, but this is not advised, as Composr is being shipped with the EN language complete and unabridged as standard - hence you cannot go wrong if you leave it as EN.In theory, this is the only hook to English that there is.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:21:"The fallback language";}}s:9:"user_lang";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"user_lang";s:11:"description";s:43:"Get the user's currently selected language.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:27:"The user's current language";}}s:16:"get_lang_browser";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_lang_browser";s:11:"description";s:72:"Get the closest fit language codename to what the browser is requesting.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:78:"The closest-fit language to what the browser wants (null: browser doesn't ask)";}}s:15:"does_lang_exist";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:1:{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:12:"The language";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:15:"does_lang_exist";s:11:"description";s:43:"Find whether the specified language exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the language exists";}}s:21:"get_site_default_lang";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"get_site_default_lang";s:11:"description";s:64:"Get the site's default language, with support for URL overrides.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:27:"The site's default language";}}s:15:"get_lang_member";a:6:{s:8:"filename";s:16:"sources/lang.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_lang_member";s:11:"description";s:146:"Get what language the given member uses. The language is sent through a mapping to ensure it is in the right format, or dumped if it will not map.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:65:"The language used by the member (null: the language will not map)";}}s:8:"get_lang";a:6:{s:8:"filename";s:16:"sources/lang.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:7:"?MEMBER";s:11:"description";s:104:"The member ID (null: site default language, although better just to call get_site_default_lang directly)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:8:"get_lang";s:11:"description";s:156:"Get the current language.First it tries to get the GET or POST language values, then it tries the user's language, then site default, then it resorts to EN.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:20:"The current language";}}s:12:"require_lang";a:5:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The language file name";s:11:"phpdoc_name";s:8:"codename";}i:1;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:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}i:2;a:8:{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:7:"?string";s:11:"description";s:77:"The language type (lang_custom, or custom) (null: normal priorities are used)";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:18:"lang_custom custom";}i:3;a:7:{s:4:"name";s:13:"ignore_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to just return if there was a loading error";s:11:"phpdoc_name";s:13:"ignore_errors";}}s:4:"name";s:12:"require_lang";s:11:"description";s:167:"Includes a language file for use in the script.If $type is not null, then this specifies whether to use 'lang_custom' or 'custom' (otherwise, normal priorities occur).";s:5:"flags";a:0:{}}s:16:"require_all_lang";a:5:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:2:{i:0;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:14:"?LANGUAGE_NAME";s:11:"description";s:70:"The language to include files from (null: use current users language).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:7:{s:4:"name";s:16:"only_if_for_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:63:"Only load it up if it is specifically defined for our language.";s:11:"phpdoc_name";s:16:"only_if_for_lang";}}s:4:"name";s:16:"require_all_lang";s:11:"description";s:136:"Include all the language files for use in the script.NOTE: This may reduce performance, so you should only use it if you really have to.";s:5:"flags";a:0:{}}s:27:"require_all_open_lang_files";a:5:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:1:{i:0;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:14:"?LANGUAGE_NAME";s:11:"description";s:73:"The language to require open files from (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:27:"require_all_open_lang_files";s:11:"description";s:73:"Require all the open language files. This doesn't hurt performance a lot.";s:5:"flags";a:0:{}}s:21:"protect_from_escaping";a:6:{s:8:"filename";s:16:"sources/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:5:"mixed";s:11:"description";s:4:"Text";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:21:"protect_from_escaping";s:11:"description";s:53:"Stop some text being escapable by the Tempcode layer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"Text that can't be escaped";}}s:8:"_do_lang";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The language string ID";s:11:"phpdoc_name";s:8:"codename";}i:1;a:7:{s:4:"name";s:10:"parameter1";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:68:"The first parameter [string or Tempcode] (replaces {1}) (null: none)";s:11:"phpdoc_name";s:10:"parameter1";}i:2;a:7:{s:4:"name";s:10:"parameter2";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:69:"The second parameter [string or Tempcode] (replaces {2}) (null: none)";s:11:"phpdoc_name";s:10:"parameter2";}i:3;a:7:{s:4:"name";s:10:"parameter3";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:131:"The third parameter (replaces {3}). May be an array of [of string or Tempcode], to allow any number of additional args (null: none)";s:11:"phpdoc_name";s:10:"parameter3";}i:4;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:14:"?LANGUAGE_NAME";s:11:"description";s:42:"The language to use (null: users language)";s:11:"phpdoc_name";s:4:"lang";}i:5;a:7:{s:4:"name";s:14:"require_result";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to cause Composr to exit if the lookup does not succeed";s:11:"phpdoc_name";s:14:"require_result";}}s:4:"name";s:8:"_do_lang";s:11:"description";s:52:"Get the human-readable form of a language string ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:95:"The human-readable content (null: not found). String normally. Tempcode if Tempcode parameters.";}}s:14:"find_all_langs";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:16:"even_empty_langs";s:7:"default";s:13:"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 even find empty languages";s:11:"phpdoc_name";s:16:"even_empty_langs";}}s:4:"name";s:14:"find_all_langs";s:11:"description";s:97:"Get an array of all the installed languages that can be found in root/lang/ and root/lang_custom/";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:41:"The installed languages (map, lang=>type)";}}s:27:"create_selection_list_langs";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:11:"select_lang";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:74:"The language to have selected by default (null: uses the current language)";s:11:"phpdoc_name";s:11:"select_lang";}i:1;a:7:{s:4:"name";s:10:"show_unset";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to show languages that have no language details currently defined for them";s:11:"phpdoc_name";s:10:"show_unset";}}s:4:"name";s:27:"create_selection_list_langs";s:11:"description";s:52:"Get a nice formatted XHTML listed language selector.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The language selector";}}s:19:"insert_lang_comcode";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:9:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}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 text";s:11:"phpdoc_name";s:4:"text";}i:2;a:6:{s:4:"name";s:5:"level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The level of importance this language string holds";s:11:"phpdoc_name";s:5:"level";s:3:"set";s:7:"1 2 3 4";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:7:{s:4:"name";s:15:"insert_as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether to insert it as an admin (any Comcode parsing will be carried out with admin privileges)";s:11:"phpdoc_name";s:15:"insert_as_admin";}i:5;a:7:{s:4:"name";s:7:"pass_id";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:196:"The special identifier for this language string on the page it will be displayed on; this is used to provide an explicit binding between languaged elements and greater templated areas (null: none)";s:11:"phpdoc_name";s:7:"pass_id";}i:6;a:7:{s:4:"name";s:8:"wrap_pos";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:"Comcode parser wrap position (null: no wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:7;a:7:{s:4:"name";s:13:"preparse_mode";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to generate a fatal error if there is invalid Comcode";s:11:"phpdoc_name";s:13:"preparse_mode";}i:8;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:134:"Whether we are saving as a 'volatile' file extension (used in the XML DB driver, to mark things as being non-syndicated to subversion)";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:19:"insert_lang_comcode";s:11:"description";s:80:"Insert a Comcode language string into the translation table, and returns the ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:11:"insert_lang";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:13:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}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 text";s:11:"phpdoc_name";s:4:"text";}i:2;a:6:{s:4:"name";s:5:"level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The level of importance this language string holds";s:11:"phpdoc_name";s:5:"level";s:3:"set";s:7:"1 2 3 4";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:7:{s:4:"name";s:7:"comcode";s:7:"default";s:13:"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 it is to be parsed as Comcode";s:11:"phpdoc_name";s:7:"comcode";}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:8:"?integer";s:11:"description";s:69:"The ID to use for the language string (null: work out next available)";s:11:"phpdoc_name";s:2:"id";}i:6;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:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}i:7;a:7:{s:4:"name";s:15:"insert_as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether to insert it as an admin (any Comcode parsing will be carried out with admin privileges)";s:11:"phpdoc_name";s:15:"insert_as_admin";}i:8;a:7:{s:4:"name";s:7:"pass_id";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:196:"The special identifier for this language string on the page it will be displayed on; this is used to provide an explicit binding between languaged elements and greater templated areas (null: none)";s:11:"phpdoc_name";s:7:"pass_id";}i:9;a:7:{s:4:"name";s:11:"text_parsed";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:46:"Assembled Tempcode portion (null: work it out)";s:11:"phpdoc_name";s:11:"text_parsed";}i:10;a:7:{s:4:"name";s:8:"wrap_pos";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:"Comcode parser wrap position (null: no wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:11;a:7:{s:4:"name";s:13:"preparse_mode";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to generate a fatal error if there is invalid Comcode";s:11:"phpdoc_name";s:13:"preparse_mode";}i:12;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:134:"Whether we are saving as a 'volatile' file extension (used in the XML DB driver, to mark things as being non-syndicated to subversion)";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:11:"insert_lang";s:11:"description";s:72:"Insert a language string into the translation table, and returns the ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:18:"lang_remap_comcode";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:7:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:55:"The ID (if multi-lang-content on), or the string itself";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The text to remap to";s:11:"phpdoc_name";s:4:"text";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:7:{s:4:"name";s:7:"pass_id";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:196:"The special identifier for this language string on the page it will be displayed on; this is used to provide an explicit binding between languaged elements and greater templated areas (null: none)";s:11:"phpdoc_name";s:7:"pass_id";}i:5;a:7:{s:4:"name";s:11:"source_user";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:67:"The member that owns the content this is for (null: current member)";s:11:"phpdoc_name";s:11:"source_user";}i:6;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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:"Whether to generate Comcode as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:18:"lang_remap_comcode";s:11:"description";s:95:"Remap the specified Comcode language string ID, and return the ID again - the ID isn't changed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:10:"lang_remap";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:8:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:55:"The ID (if multi-lang-content on), or the string itself";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The text to remap to";s:11:"phpdoc_name";s:4:"text";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:7:{s:4:"name";s:7:"comcode";s:7:"default";s:13:"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 it is to be parsed as Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:5;a:7:{s:4:"name";s:7:"pass_id";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:196:"The special identifier for this language string on the page it will be displayed on; this is used to provide an explicit binding between languaged elements and greater templated areas (null: none)";s:11:"phpdoc_name";s:7:"pass_id";}i:6;a:7:{s:4:"name";s:11:"source_user";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:67:"The member that owns the content this is for (null: current member)";s:11:"phpdoc_name";s:11:"source_user";}i:7;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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:"Whether to generate Comcode as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:10:"lang_remap";s:11:"description";s:87:"Remap the specified language string ID, and return the ID again - the ID isn't changed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:11:"delete_lang";a:5:{s:8:"filename";s:16:"sources/lang.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:11:"delete_lang";s:11:"description";s:64:"Delete the specified language string from the translation table.";s:5:"flags";a:0:{}}s:37:"get_translated_tempcode__and_simplify";a:6:{s:8:"filename";s:16:"sources/lang.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: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:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:119:"The table row. Must not have aspects of other tables in it (i.e. joins). Pre-filter using 'db_map_restrict' if required";s:11:"phpdoc_name";s:3:"row";}i:2;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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;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:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}i:5;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force it to the specified language";s:11:"phpdoc_name";s:5:"force";}i:6;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:120:"Whether to force as_admin, even if the language string isn't stored against an admin (designed for Comcode page caching)";s:11:"phpdoc_name";s:8:"as_admin";}i:7;a:7:{s:4:"name";s:21:"clear_away_from_cache";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:221:"Whether to remove from the Tempcode cache when we're done, for performance reasons (normally don't bother with this, but some code knows it won't be needed again -- esp Comcode cache layer -- and saves RAM by removing it)";s:11:"phpdoc_name";s:21:"clear_away_from_cache";}}s:4:"name";s:37:"get_translated_tempcode__and_simplify";s:11:"description";s:241:"Wrapper for get_translated_tempcode, which then converts complex Tempcode back to very simple flat Tempcode, as an optimisation.We won't normally call this as it breaks our architecture, but webmaster may request it if they are okay with it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:57:"The parsed Comcode (null: the text couldn't be looked up)";}}s:23:"get_translated_tempcode";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:9:{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:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:119:"The table row. Must not have aspects of other tables in it (i.e. joins). Pre-filter using 'db_map_restrict' if required";s:11:"phpdoc_name";s:3:"row";}i:2;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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;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:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}i:5;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force it to the specified language";s:11:"phpdoc_name";s:5:"force";}i:6;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:120:"Whether to force as_admin, even if the language string isn't stored against an admin (designed for Comcode page caching)";s:11:"phpdoc_name";s:8:"as_admin";}i:7;a:7:{s:4:"name";s:21:"clear_away_from_cache";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:221:"Whether to remove from the Tempcode cache when we're done, for performance reasons (normally don't bother with this, but some code knows it won't be needed again -- esp Comcode cache layer -- and saves RAM by removing it)";s:11:"phpdoc_name";s:21:"clear_away_from_cache";}i:8;a:7:{s:4:"name";s:24:"ignore_browser_decaching";s:7:"default";s:13:"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:"If we have just re-populated so will not decache";s:11:"phpdoc_name";s:24:"ignore_browser_decaching";}}s:4:"name";s:23:"get_translated_tempcode";s:11:"description";s:138:"This function is an offshoot of get_translated_text, it instead returns parsed Comcode that is linked to the specified language string ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:57:"The parsed Comcode (null: the text couldn't be looked up)";}}s:19:"get_translated_text";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"entry";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:55:"The ID (if multi-lang-content on), or the string itself";s:11:"phpdoc_name";s:5:"entry";}i:1;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}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:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}i:3;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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 force it to the specified language";s:11:"phpdoc_name";s:5:"force";}}s:4:"name";s:19:"get_translated_text";s:11:"description";s:88:"Try to return the human-readable version of the language string ID, passed in as $entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:71:"The human-readable version (null: could not look up when $force was on)";}}s:19:"comcode_lang_string";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"lang_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The language string ID";s:11:"phpdoc_name";s:9:"lang_code";}}s:4:"name";s:19:"comcode_lang_string";s:11:"description";s:88:"Convert a language string that is Comcode to Tempcode, with potential caching in the db.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The parsed Comcode";}}s:15:"choose_language";a:6:{s:8:"filename";s:16:"sources/lang.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:18:"Title for the form";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:3:"tip";s:7:"default";s:13:"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 give a tip about edit order";s:11:"phpdoc_name";s:3:"tip";}i:2;a:7:{s:4:"name";s:19:"allow_all_selection";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to add an 'all' entry to the list";s:11:"phpdoc_name";s:19:"allow_all_selection";}}s:4:"name";s:15:"choose_language";s:11:"description";s:24:"UI to choose a language.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:63:"The UI (Tempcode) or the language to use (string/LANGUAGE_NAME)";}}s:18:"get_ordinal_suffix";a:6:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"index";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"Number to do this for";s:11:"phpdoc_name";s:5:"index";}}s:4:"name";s:18:"get_ordinal_suffix";s:11:"description";s:54:"Get the ordinal suffix (e.g. nd, rd, st) for a number.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The suffix";}}s:22:"table_id_locking_start";a:5:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:26:"Database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:1;s:4:"type";s:8:"?integer";s:11:"description";s:71:"ID number (returned by reference) (null: just do normal auto-increment)";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:4:"lock";s:3:"ref";b:1;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether locking has happened (returned by reference)";s:11:"phpdoc_name";s:4:"lock";}i:3;a:7:{s:4:"name";s:5:"table";s:7:"default";s:9:"translate";s:11:"default_raw";s:11:"'translate'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Translate table";s:11:"phpdoc_name";s:5:"table";}i:4;a:7:{s:4:"name";s:8:"id_field";s:7:"default";s:2:"id";s:11:"default_raw";s:4:"'id'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"ID field";s:11:"phpdoc_name";s:8:"id_field";}}s:4:"name";s:22:"table_id_locking_start";s:11:"description";s:72:"Start locking and get faux auto-increment ID for inserting into a table.";s:5:"flags";a:0:{}}s:20:"table_id_locking_end";a:5:{s:8:"filename";s:16:"sources/lang.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:26:"Database connection to use";s:11:"phpdoc_name";s:10:"connection";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:47:"ID number (null: just do normal auto-increment)";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:4:"lock";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether locking has happened";s:11:"phpdoc_name";s:4:"lock";}i:3;a:7:{s:4:"name";s:5:"table";s:7:"default";s:9:"translate";s:11:"default_raw";s:11:"'translate'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Translate table";s:11:"phpdoc_name";s:5:"table";}i:4;a:7:{s:4:"name";s:8:"id_field";s:7:"default";s:2:"id";s:11:"default_raw";s:4:"'id'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"ID field";s:11:"phpdoc_name";s:8:"id_field";}}s:4:"name";s:20:"table_id_locking_end";s:11:"description";s:39:"End locking for inserting into a table.";s:5:"flags";a:0:{}}s:23:"inline_language_editing";a:5:{s:8:"filename";s:17:"sources/lang2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The language string ID";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:42:"The language to use (null: users language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:23:"inline_language_editing";s:11:"description";s:65:"Edit a language string direct from something saved into the code.";s:5:"flags";a:0:{}}s:14:"get_lang_files";a:6:{s:8:"filename";s:17:"sources/lang2.php";s:10:"parameters";a:1:{i:0;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:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:14:"get_lang_files";s:11:"description";s:85:"Get a list of languages files for the given language. ONLY those that are overridden.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:79:"The language files (a map between language file name -and- lang or lang_custom)";}}s:23:"find_lang_content_names";a:6:{s:8:"filename";s:17:"sources/lang2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"ids";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:44:"The language string IDs (array of AUTO_LINK)";s:11:"phpdoc_name";s:3:"ids";}}s:4:"name";s:23:"find_lang_content_names";s:11:"description";s:73:"Search the database to find human-readable names for language string IDs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:96:"Human readable names (List of string against same IDs in input array or null for orphan strings)";}}s:32:"create_selection_list_lang_files";a:6:{s:8:"filename";s:17:"sources/lang2.php";s:10:"parameters";a:1:{i:0;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:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:32:"create_selection_list_lang_files";s:11:"description";s:80:"Get a nice formatted XHTML listed language file selector for the given language.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"The language file selector";}}s:25:"lookup_language_full_name";a:6:{s:8:"filename";s:17:"sources/lang2.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:13:"LANGUAGE_NAME";s:11:"description";s:12:"The language";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:25:"lookup_language_full_name";s:11:"description";s:65:"Get the full name of a language. e.g. 'EN' would become 'English'";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:29:"The full name of the language";}}s:16:"_choose_language";a:6:{s:8:"filename";s:17:"sources/lang3.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:18:"Title for the form";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:3:"tip";s:7:"default";s:13:"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 give a tip about edit order";s:11:"phpdoc_name";s:3:"tip";}i:2;a:7:{s:4:"name";s:19:"allow_all_selection";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to add an 'all' entry to the list";s:11:"phpdoc_name";s:19:"allow_all_selection";}}s:4:"name";s:16:"_choose_language";s:11:"description";s:24:"UI to choose a language.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:63:"The UI (Tempcode) or the language to use (string/LANGUAGE_NAME)";}}s:15:"_find_all_langs";a:6:{s:8:"filename";s:17:"sources/lang3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:16:"even_empty_langs";s:7:"default";s:13:"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 even find empty languages";s:11:"phpdoc_name";s:16:"even_empty_langs";}}s:4:"name";s:15:"_find_all_langs";s:11:"description";s:97:"Get an array of all the installed languages that can be found in root/lang/ and root/lang_custom/";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:41:"The installed languages (map, lang=>type)";}}s:28:"_create_selection_list_langs";a:6:{s:8:"filename";s:17:"sources/lang3.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:11:"select_lang";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:74:"The language to have selected by default (null: uses the current language)";s:11:"phpdoc_name";s:11:"select_lang";}i:1;a:7:{s:4:"name";s:10:"show_unset";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:82:"Whether to show languages that have no language details currently defined for them";s:11:"phpdoc_name";s:10:"show_unset";}}s:4:"name";s:28:"_create_selection_list_langs";s:11:"description";s:52:"Get a nice formatted XHTML listed language selector.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The language selector";}}s:28:"lang_code_to_default_content";a:6:{s:8:"filename";s:17:"sources/lang3.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:7:"ID_TEXT";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The language string codename";s:11:"phpdoc_name";s:4:"code";}i:2;a:7:{s:4:"name";s:7:"comcode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether the given codes value is to be parsed as Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:3;a:7:{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:50:"The level of importance this language string holds";s:11:"phpdoc_name";s:5:"level";}i:4;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:28:"lang_code_to_default_content";s:11:"description";s:112:"Take a .ini language string and save it into a translated language string in the database, for all translations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:27:"lang_code_to_static_content";a:6:{s:8:"filename";s:17:"sources/lang3.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:7:"ID_TEXT";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:3:"str";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The static string";s:11:"phpdoc_name";s:3:"str";}i:2;a:7:{s:4:"name";s:7:"comcode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether the given codes value is to be parsed as Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:3;a:7:{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:50:"The level of importance this language string holds";s:11:"phpdoc_name";s:5:"level";}i:4;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:27:"lang_code_to_static_content";s:11:"description";s:105:"Take a static string and save it into a translated language string in the database, for all translations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:12:"_insert_lang";a:6:{s:8:"filename";s:17:"sources/lang3.php";s:10:"parameters";a:13:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}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 text";s:11:"phpdoc_name";s:4:"text";}i:2;a:6:{s:4:"name";s:5:"level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:50:"The level of importance this language string holds";s:11:"phpdoc_name";s:5:"level";s:3:"set";s:7:"1 2 3 4";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:7:{s:4:"name";s:7:"comcode";s:7:"default";s:13:"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 it is to be parsed as Comcode";s:11:"phpdoc_name";s:7:"comcode";}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:8:"?integer";s:11:"description";s:69:"The ID to use for the language string (null: work out next available)";s:11:"phpdoc_name";s:2:"id";}i:6;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:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}i:7;a:7:{s:4:"name";s:15:"insert_as_admin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether to insert it as an admin (any Comcode parsing will be carried out with admin privileges)";s:11:"phpdoc_name";s:15:"insert_as_admin";}i:8;a:7:{s:4:"name";s:7:"pass_id";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:196:"The special identifier for this language string on the page it will be displayed on; this is used to provide an explicit binding between languaged elements and greater templated areas (null: none)";s:11:"phpdoc_name";s:7:"pass_id";}i:9;a:7:{s:4:"name";s:11:"text_parsed";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:46:"Assembled Tempcode portion (null: work it out)";s:11:"phpdoc_name";s:11:"text_parsed";}i:10;a:7:{s:4:"name";s:8:"wrap_pos";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:"Comcode parser wrap position (null: no wrapping)";s:11:"phpdoc_name";s:8:"wrap_pos";}i:11;a:7:{s:4:"name";s:13:"preparse_mode";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to generate a fatal error if there is invalid Comcode";s:11:"phpdoc_name";s:13:"preparse_mode";}i:12;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:134:"Whether we are saving as a 'volatile' file extension (used in the XML DB driver, to mark things as being non-syndicated to subversion)";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:12:"_insert_lang";s:11:"description";s:72:"Insert a language string into the translation table, and returns the ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:11:"_lang_remap";a:6:{s:8:"filename";s:17:"sources/lang3.php";s:10:"parameters";a:9:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:55:"The ID (if multi-lang-content on), or the string itself";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The text to remap to";s:11:"phpdoc_name";s:4:"text";}i:3;a:7:{s:4:"name";s:10:"connection";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:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:7:{s:4:"name";s:7:"comcode";s:7:"default";s:13:"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 it is to be parsed as Comcode";s:11:"phpdoc_name";s:7:"comcode";}i:5;a:7:{s:4:"name";s:7:"pass_id";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:196:"The special identifier for this language string on the page it will be displayed on; this is used to provide an explicit binding between languaged elements and greater templated areas (null: none)";s:11:"phpdoc_name";s:7:"pass_id";}i:6;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:67:"The member that owns the content this is for (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}i:7;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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:"Whether to generate Comcode as arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:8;a:7:{s:4:"name";s:17:"leave_source_user";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:91:"Whether to leave the source member as-is (as opposed to resetting it to the current member)";s:11:"phpdoc_name";s:17:"leave_source_user";}}s:4:"name";s:11:"_lang_remap";s:11:"description";s:87:"Remap the specified language string ID, and return the ID again - the ID isn't changed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"The language string ID save fields";}}s:21:"parse_translated_text";a:6:{s:8:"filename";s:17:"sources/lang3.php";s:10:"parameters";a:7:{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:3:"row";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:16:"The database row";s:11:"phpdoc_name";s:3:"row";}i:2;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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:3;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:7:"?object";s:11:"description";s:63:"The database connection to use (null: standard site connection)";s:11:"phpdoc_name";s:10:"connection";}i:4;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}i:5;a:5:{s:4:"name";s:5:"force";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether to force it to the specified language";s:11:"phpdoc_name";s:5:"force";}i:6;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:120:"Whether to force as_admin, even if the language string isn't stored against an admin (designed for Comcode page caching)";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:21:"parse_translated_text";s:11:"description";s:94:"get_translated_tempcode was asked for a lang entry that had not been parsed into Tempcode yet.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:57:"The parsed Comcode (null: the text couldn't be looked up)";}}s:20:"_comcode_lang_string";a:6:{s:8:"filename";s:17:"sources/lang3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"lang_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The language string ID";s:11:"phpdoc_name";s:9:"lang_code";}}s:4:"name";s:20:"_comcode_lang_string";s:11:"description";s:88:"Convert a language string that is Comcode to Tempcode, with potential caching in the db.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The parsed Comcode";}}s:18:"init__lang_compile";a:5:{s:8:"filename";s:24:"sources/lang_compile.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"init__lang_compile";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:20:"require_lang_compile";a:6:{s:8:"filename";s:24:"sources/lang_compile.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The language file name";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:46:"The language (null: uses the current language)";s:11:"phpdoc_name";s:4:"lang";}i:2;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:77:"The language type (lang_custom, or custom) (null: normal priorities are used)";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:18:"lang_custom custom";}i:3;a:5:{s:4:"name";s:10:"cache_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:24:"Where we are caching too";s:11:"phpdoc_name";s:10:"cache_path";}i:4;a:7:{s:4:"name";s:13:"ignore_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to just return if there was a loading error";s:11:"phpdoc_name";s:13:"ignore_errors";}}s:4:"name";s:20:"require_lang_compile";s:11:"description";s:60:"Load up a language file, compiling it (it's not cached yet).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether we FAILED to load";}}s:21:"get_lang_file_section";a:6:{s:8:"filename";s:24:"sources/lang_compile.php";s:10:"parameters";a:3:{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:12:"The language";s:11:"phpdoc_name";s:4:"lang";}i:1;a:7:{s:4:"name";s:4:"file";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:44:"The language file (null: all language files)";s:11:"phpdoc_name";s:4:"file";}i:2;a:7:{s:4:"name";s:7:"section";s:7:"default";s:12:"descriptions";s:11:"default_raw";s:14:"'descriptions'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The section";s:11:"phpdoc_name";s:7:"section";}}s:4:"name";s:21:"get_lang_file_section";s:11:"description";s:87:"Get an array of all the INI entries in the specified language for a particular section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The INI entries";}}s:17:"get_lang_file_map";a:6:{s:8:"filename";s:24:"sources/lang_compile.php";s:10:"parameters";a:4:{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:12:"The language";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The language file";s:11:"phpdoc_name";s:4:"file";}i:2;a:7:{s:4:"name";s:10:"non_custom";s:7:"default";s:13:"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:"Force usage of original file";s:11:"phpdoc_name";s:10:"non_custom";}i:3;a:7:{s:4:"name";s:12:"apply_filter";s:7:"default";s:12:"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:"Apply the language pack filter";s:11:"phpdoc_name";s:12:"apply_filter";}}s:4:"name";s:17:"get_lang_file_map";s:11:"description";s:71:"Get an array of all the INI language entries in the specified language.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"The language entries";}}s:18:"_get_lang_file_map";a:5:{s:8:"filename";s:24:"sources/lang_compile.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:1:"b";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:29:"The path to the language file";s:11:"phpdoc_name";s:1:"b";}i:1;a:5:{s:4:"name";s:7:"entries";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:33:"The currently loaded language map";s:11:"phpdoc_name";s:7:"entries";}i:2;a:7:{s:4:"name";s:7:"section";s:7:"default";s:7:"strings";s:11:"default_raw";s:9:"'strings'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The section to get";s:11:"phpdoc_name";s:7:"section";}i:3;a:7:{s:4:"name";s:16:"given_whole_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:62:"Whether $b is in fact not a path, but the actual file contents";s:11:"phpdoc_name";s:16:"given_whole_file";}i:4;a:7:{s:4:"name";s:12:"apply_filter";s:7:"default";s:12:"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:"Apply the language pack filter";s:11:"phpdoc_name";s:12:"apply_filter";}i:5;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:14:"?LANGUAGE_NAME";s:11:"description";s:33:"Language (null: current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:18:"_get_lang_file_map";s:11:"description";s:60:"Extend a language map from strings in a given language file.";s:5:"flags";a:0:{}}s:22:"has_leader_board_since";a:6:{s:8:"filename";s:24:"sources/leader_board.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:12:"Cut-off time";s:11:"phpdoc_name";s:6:"cutoff";}}s:4:"name";s:22:"has_leader_board_since";s:11:"description";s:74:"See if a leader-board has been calculated since a particular cut-off time.";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:29:"calculate_latest_leader_board";a:6:{s:8:"filename";s:24:"sources/leader_board.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"retrieve";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:60:"Whether to retrieve results too (no retrieve -> faster call)";s:11:"phpdoc_name";s:8:"retrieve";}}s:4:"name";s:29:"calculate_latest_leader_board";s:11:"description";s:27:"Calculate the leader-board.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:83:"A map of member-IDs to points, sorted by leader-board status (null: not retrieving)";}}s:15:"init__locations";a:5:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__locations";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:29:"find_continents_and_countries";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"find_continents_and_countries";s:11:"description";s:43:"Find structure of continents and countries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Structure of continents and countries";}}s:15:"find_continents";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"find_continents";s:11:"description";s:24:"Find list of continents.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"List of continents";}}s:14:"find_countries";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_countries";s:11:"description";s:23:"Find list of countries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of countries";}}s:14:"find_continent";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"country";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"ISO country code";s:11:"phpdoc_name";s:7:"country";}}s:4:"name";s:14:"find_continent";s:11:"description";s:28:"Find continent of a country.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:27:"Continent (null: not found)";}}s:26:"find_iso_country_from_name";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"country";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Country name";s:11:"phpdoc_name";s:7:"country";}}s:4:"name";s:26:"find_iso_country_from_name";s:11:"description";s:46:"Find the ISO country code from a country name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:34:"ISO country code (null: not found)";}}s:26:"find_country_name_from_iso";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"iso";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"ISO country code";s:11:"phpdoc_name";s:3:"iso";}}s:4:"name";s:26:"find_country_name_from_iso";s:11:"description";s:45:"Find the country name of an ISO country code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:30:"Country name (null: not found)";}}s:28:"create_region_selection_list";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:1:{i:0;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:52:"The currently selected regions (null: none selected)";s:11:"phpdoc_name";s:7:"regions";}}s:4:"name";s:28:"create_region_selection_list";s:11:"description";s:43:"Get a nice, formatted XHTML list of regions";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The list of regions";}}s:10:"get_region";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_region";s:11:"description";s:185:"Find the active region for the current user.Function likely to be overridden if a region scheme more complex than ISO countries is in use. E.g. to detect via considering state CPF also.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:48:"The active region (null: none found, unfiltered)";}}s:11:"get_country";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_country";s:11:"description";s:49:"Find the active ISO country for the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:48:"The active region (null: none found, unfiltered)";}}s:12:"geolocate_ip";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:1:{i:0;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:45:"The IP to geolocate (null: current user's IP)";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"geolocate_ip";s:11:"description";s:49:"Find the country an IP address long is located in";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:36:"The country initials (null: unknown)";}}s:18:"form_input_regions";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:1:{i:0;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:52:"The currently selected regions (null: none selected)";s:11:"phpdoc_name";s:7:"regions";}}s:4:"name";s:18:"form_input_regions";s:11:"description";s:21:"Get a region inputter";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The region inputter";}}s:17:"sql_region_filter";a:6:{s:8:"filename";s:21:"sources/locations.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:18:"field_name_to_join";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"Field name for content ID in table being connected to";s:11:"phpdoc_name";s:18:"field_name_to_join";}i:2;a:7:{s:4:"name";s:6:"region";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:"Region to show for (null: auto-detect)";s:11:"phpdoc_name";s:6:"region";}}s:4:"name";s:17:"sql_region_filter";s:11:"description";s:55:"Get SQL to add to wider SQL query, for region filtering";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:3:"SQL";}}s:17:"autofill_geo_cpfs";a:5:{s:8:"filename";s:26:"sources/locations_cpfs.php";s:10:"parameters";a:1:{i:0;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:31:"Member ID to do for (null: all)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:17:"autofill_geo_cpfs";s:11:"description";s:92:"Automatically populate member geo CPFs as much as possible from other data.Assumes Conversr.";s:5:"flags";a:0:{}}s:18:"_autofill_geo_cpfs";a:5:{s:8:"filename";s:26:"sources/locations_cpfs.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:10:"Member row";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:18:"_autofill_geo_cpfs";s:11:"description";s:57:"Automatically populate member geo CPFs (worker function).";s:5:"flags";a:0:{}}s:7:"geocode";a:6:{s:8:"filename";s:31:"sources/locations_geocoding.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"location";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Written location";s:11:"phpdoc_name";s:8:"location";}i:1;a:7:{s:4:"name";s:9:"error_msg";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:9:"?Tempcode";s:11:"description";s:57:"Error message (written by reference) (null: not returned)";s:11:"phpdoc_name";s:9:"error_msg";}}s:4:"name";s:7:"geocode";s:11:"description";s:27:"Geocode a written location.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:41:"A pair: Latitude, Longitude (null: error)";}}s:15:"reverse_geocode";a:6:{s:8:"filename";s:31:"sources/locations_geocoding.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"latitude";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:8:"Latitude";s:11:"phpdoc_name";s:8:"latitude";}i:1;a:5:{s:4:"name";s:9:"longitude";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:9:"Longitude";s:11:"phpdoc_name";s:9:"longitude";}i:2;a:7:{s:4:"name";s:9:"error_msg";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:9:"?Tempcode";s:11:"description";s:57:"Error message (written by reference) (null: not returned)";s:11:"phpdoc_name";s:9:"error_msg";}}s:4:"name";s:15:"reverse_geocode";s:11:"description";s:31:"Geocode a latitude & longitude.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:100:"A tuple: Formatted address, Street Address, City, County, State, Zip/Postcode, Country (null: error)";}}s:15:"_google_geocode";a:6:{s:8:"filename";s:31:"sources/locations_geocoding.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"url_params";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"What to add into the URL";s:11:"phpdoc_name";s:10:"url_params";}i:1;a:7:{s:4:"name";s:9:"error_msg";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:9:"?Tempcode";s:11:"description";s:57:"Error message (written by reference) (null: not returned)";s:11:"phpdoc_name";s:9:"error_msg";}}s:4:"name";s:15:"_google_geocode";s:11:"description";s:27:"Geocode a written location.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:29:"Geocode results (null: error)";}}s:12:"init__lookup";a:5:{s:8:"filename";s:18:"sources/lookup.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__lookup";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"lookup_member_page";a:6:{s:8:"filename";s:18:"sources/lookup.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:43:"The member for whom we are getting the page";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:48:"The member's name (by reference) (null: unknown)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:1;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:46:"The member's ID (by reference) (null: unknown)";s:11:"phpdoc_name";s:2:"id";}i:3;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:46:"The member's IP (by reference) (null: unknown)";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:18:"lookup_member_page";s:11:"description";s:43:"Get information about the specified member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The member's stats rows";}}s:15:"get_stats_track";a:6:{s:8:"filename";s:18:"sources/lookup.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:42:"The member we are getting travel stats for";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:28:"The IP address of the member";s:11:"phpdoc_name";s:2:"ip";}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:35:"The current position in the browser";s:11:"phpdoc_name";s:5:"start";}i:3;a:7:{s:4:"name";s:3:"max";s:7:"default";i:50;s:11:"default_raw";s:2:"50";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"The maximum number of rows to show per browser page";s:11:"phpdoc_name";s:3:"max";}i:4;a:7:{s:4:"name";s:8:"sortable";s:7:"default";s:13:"date_and_time";s:11:"default_raw";s:15:"'date_and_time'";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:33:"The current sortable (null: none)";s:11:"phpdoc_name";s:8:"sortable";}i:5;a:8:{s:4:"name";s:10:"sort_order";s:7:"default";s:4:"DESC";s:11:"default_raw";s:6:"'DESC'";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:40:"The order we are sorting in (null: none)";s:11:"phpdoc_name";s:10:"sort_order";s:3:"set";s:8:"ASC DESC";}}s:4:"name";s:15:"get_stats_track";s:11:"description";s:76:"Get a results table showing info about the member's travels around the site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The results table";}}s:20:"find_security_alerts";a:6:{s:8:"filename";s:18:"sources/lookup.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"where";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:30:"WHERE constraints (null: none)";s:11:"phpdoc_name";s:5:"where";}}s:4:"name";s:20:"find_security_alerts";s:11:"description";s:71:"Get a results table showing security alerts matching WHERE constraints.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"A pair: The results table, The number";}}s:11:"init__lorem";a:5:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__lorem";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:10:"lorem_word";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"lorem_word";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:12:"lorem_word_2";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"lorem_word_2";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:12:"lorem_phrase";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"lorem_phrase";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:11:"lorem_title";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"lorem_title";s:11:"description";s:37:"Get suitable placeholder text: title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:14:"placeholder_ip";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"placeholder_ip";s:11:"description";s:37:"Get suitable placeholder text: title.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:14:"lorem_sentence";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"lorem_sentence";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:15:"lorem_paragraph";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"lorem_paragraph";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:11:"lorem_chunk";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"lorem_chunk";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:15:"lorem_word_html";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"lorem_word_html";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:17:"lorem_word_2_html";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"lorem_word_2_html";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:17:"lorem_phrase_html";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"lorem_phrase_html";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:19:"lorem_sentence_html";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"lorem_sentence_html";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:20:"lorem_paragraph_html";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"lorem_paragraph_html";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:16:"lorem_chunk_html";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"lorem_chunk_html";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:16:"placeholder_form";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"placeholder_form";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:18:"placeholder_fields";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"placeholder_fields";s:11:"description";s:10:"Get fields";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:26:"placeholder_fields_as_divs";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"placeholder_fields_as_divs";s:11:"description";s:48:"Get fields, but composed of divs (used by forum)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:27:"placeholder_form_with_field";a:6:{s:8:"filename";s:17:"sources/lorem.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:22:"The field name wanted.";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:27:"placeholder_form_with_field";s:11:"description";s:21:"Get form with a field";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:17:"placeholder_table";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"placeholder_table";s:11:"description";s:30:"Get suitable placeholder text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:15:"placeholder_url";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"placeholder_url";s:11:"description";s:29:"Get suitable placeholder URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"Place holder URL.";}}s:16:"placeholder_link";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"placeholder_link";s:11:"description";s:30:"Get suitable placeholder link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder link.";}}s:18:"placeholder_random";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"placeholder_random";s:11:"description";s:19:"Get a random number";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"Random number";}}s:21:"placeholder_random_id";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"placeholder_random_id";s:11:"description";s:15:"Get a random ID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"Random ID";}}s:18:"placeholder_button";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"placeholder_button";s:11:"description";s:12:"Get a button";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"Button";}}s:19:"placeholder_options";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"placeholder_options";s:11:"description";s:29:"Get options for drop-down box";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"Place holder text";}}s:17:"placeholder_array";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:12:"num_elements";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:25:"Number of array elements.";s:11:"phpdoc_name";s:12:"num_elements";}}s:4:"name";s:17:"placeholder_array";s:11:"description";s:12:"Get an array";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"Place holder array.";}}s:21:"placeholder_list_item";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"placeholder_list_item";s:11:"description";s:10:"Get a list";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:17:"placeholder_types";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"placeholder_types";s:11:"description";s:20:"Get some set of data";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:17:"placeholder_image";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"placeholder_image";s:11:"description";s:12:"Get an image";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:16:"placeholder_date";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"placeholder_date";s:11:"description";s:8:"Get time";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:20:"placeholder_date_raw";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"placeholder_date_raw";s:11:"description";s:35:"Get suitable placeholder timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:18:"placeholder_number";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"placeholder_number";s:11:"description";s:32:"Get suitable placeholder number.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:14:"placeholder_id";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"placeholder_id";s:11:"description";s:28:"Get suitable placeholder ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:20:"placeholder_filesize";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"placeholder_filesize";s:11:"description";s:34:"Get suitable placeholder filesize.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:27:"placeholder_javascript_code";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"placeholder_javascript_code";s:11:"description";s:19:"Get javascript code";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:21:"placeholder_image_url";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"placeholder_image_url";s:11:"description";s:13:"Get image url";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"Image url";}}s:17:"placeholder_blank";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"placeholder_blank";s:11:"description";s:77:"Get a blank screen, for a parameter which is not visible and typically blank.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Place holder text.";}}s:23:"placeholder_breadcrumbs";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"placeholder_breadcrumbs";s:11:"description";s:37:"Get suitable placeholder breadcrumbs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Place holder text.";}}s:17:"do_lorem_template";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The codename of the template being loaded";s:11:"phpdoc_name";s:8:"codename";}i:1;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:73:"A map of parameters for the template (key to value) (null: no parameters)";s:11:"phpdoc_name";s:10:"parameters";}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:14:"?LANGUAGE_NAME";s:11:"description";s:105:"The language to load the template in (templates can embed language references) (null: users own language)";s:11:"phpdoc_name";s:4:"lang";}i:3;a:7:{s:4:"name";s:11:"light_error";s:7:"default";s:13:"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 not produce a stack dump if the template is missing";s:11:"phpdoc_name";s:11:"light_error";}i:4;a:7:{s:4:"name";s:8:"fallback";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:72:"Alternate template to use if the primary one does not exist (null: none)";s:11:"phpdoc_name";s:8:"fallback";}i:5;a:7:{s:4:"name";s:6:"suffix";s:7:"default";s:4:".tpl";s:11:"default_raw";s:6:"'.tpl'";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";}i:6;a:8:{s:4:"name";s:9:"directory";s:7:"default";s:9:"templates";s:11:"default_raw";s:11:"'templates'";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 css javascript xml text";}}s:4:"name";s:17:"do_lorem_template";s:11:"description";s:139:"Lorem version of do_template. It will reprocess the template into something that is "stable XHTML" and thus can work inside an XHTML editor";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The Tempcode for this template";}}s:15:"lorem_globalise";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"middle";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:37:"The Tempcode to put into a nice frame";s:11:"phpdoc_name";s:6:"middle";}i:1;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:6:"?mixed";s:11:"description";s:33:"'Additional' message (null: none)";s:11:"phpdoc_name";s:7:"message";}i:2;a:8:{s:4:"name";s:4:"type";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:"The type of special message";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:14:"inform warn """;}i:3;a:7:{s:4:"name";s:25:"include_header_and_footer";s:7:"default";s:13:"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:"Whether to include the header/footer/panels";s:11:"phpdoc_name";s:25:"include_header_and_footer";}}s:4:"name";s:15:"lorem_globalise";s:11:"description";s:130:"Lorem version of globalise. It will wrap the input into something that is "stable XHTML" and thus can work inside an XHTML editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Standalone page";}}s:21:"placeholder_emoticons";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"placeholder_emoticons";s:11:"description";s:26:"Get an array of emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:9:"Emoticons";}}s:18:"placeholder_avatar";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"placeholder_avatar";s:11:"description";s:20:"Get an avatar image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:5:"Image";}}s:28:"placeholder_emoticon_chooser";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"placeholder_emoticon_chooser";s:11:"description";s:25:"Get a table of emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"Emoticons";}}s:20:"placeholder_img_code";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:4:"type";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:46:"The theme image directory to find a code under";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:20:"placeholder_img_code";s:11:"description";s:23:"Get a theme image code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"The code";}}s:22:"placeholder_pagination";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"placeholder_pagination";s:11:"description";s:15:"Get pagination.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"Pagination.";}}s:13:"find_comcodes";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"find_comcodes";s:11:"description";s:22:"Get all Comcode files.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"List of Comcode files.";}}s:9:"find_html";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"find_html";s:11:"description";s:19:"Get all HTML files.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"List of HTML files.";}}s:30:"find_all_previews__by_template";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"find_all_previews__by_template";s:11:"description";s:33:"Find the template/screen previews";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"The map of previews (template to a tuple of preview details)";}}s:28:"find_all_previews__by_screen";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"find_all_previews__by_screen";s:11:"description";s:33:"Find the template/screen previews";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:51:"The map of previews (screen to a list of templates)";}}s:21:"render_screen_preview";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:3:{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:62:"The template to be previewed (e.g. templates/DOWNLOAD_BOX.tpl)";s:11:"phpdoc_name";s:8:"template";}i:1;a:5:{s:4:"name";s:4:"hook";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:41:"The hook the preview is in (null: search)";s:11:"phpdoc_name";s:4:"hook";}i:2;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The name of the screen preview";s:11:"phpdoc_name";s:8:"function";}}s:4:"name";s:21:"render_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:20:"The previewed screen";}}s:18:"get_text_templates";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_text_templates";s:11:"description";s:69:"Get an additional list of templates that should be previewed as text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"The list of templates";}}s:22:"is_plain_text_template";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"temp_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"Name of the template";s:11:"phpdoc_name";s:9:"temp_name";}}s:4:"name";s:22:"is_plain_text_template";s:11:"description";s:60:"Checks if the template is to be previewed as a text template";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:"is_full_screen_template";a:6:{s:8:"filename";s:17:"sources/lorem.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"temp_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:104:"Name of the template (null: do not use as criteria, use other as criteria, which must iself be non-null)";s:11:"phpdoc_name";s:9:"temp_name";}i:1;a:7:{s:4:"name";s:8:"tempcode";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:109:"The instantiated template (null: do not use as criteria, use other as criteria, which must iself be non-null)";s:11:"phpdoc_name";s:8:"tempcode";}}s:4:"name";s:23:"is_full_screen_template";s:11:"description";s:48:"Checks if the template is a full screen template";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:11:"init__m_zip";a:5:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__m_zip";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:8:"zip_open";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"zip_file";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:17:"The zip file path";s:11:"phpdoc_name";s:8:"zip_file";}}s:4:"name";s:8:"zip_open";s:11:"description";s:28:"Open a zip file for reading.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:39:"The zip file resource (number if error)";}}s:9:"zip_close";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"open_zip_file";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"The zip file resource";s:11:"phpdoc_name";s:13:"open_zip_file";}}s:4:"name";s:9:"zip_close";s:11:"description";s:17:"Close a zip file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether the file closed correctly";}}s:8:"zip_read";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"open_zip_file";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"The zip file resource";s:11:"phpdoc_name";s:13:"open_zip_file";}}s:4:"name";s:8:"zip_read";s:11:"description";s:43:"Reads the next entry in a zip file archive.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:122:"A directory entry resource for later use with the m_zip_entry_...() functions (false: if there's no more entries to read).";}}s:14:"_m_zip_RelPath";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"base_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base path (path to make relative to)";s:11:"phpdoc_name";s:9:"base_path";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:25:"The path to make relative";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:14:"_m_zip_RelPath";s:11:"description";s:21:"Make a path relative.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:17:"The relative path";}}s:14:"zip_entry_open";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"zip";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"The zip file resource";s:11:"phpdoc_name";s:3:"zip";}i:1;a:5:{s:4:"name";s:9:"zip_entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:49:"Directory entry resource returned by m_zip_read()";s:11:"phpdoc_name";s:9:"zip_entry";}i:2;a:8:{s:4:"name";s:4:"mode";s:7:"default";s:2:"rb";s:11:"default_raw";s:4:"'rb'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The file access mode";s:11:"phpdoc_name";s:4:"mode";s:3:"set";s:2:"rb";}}s:4:"name";s:14:"zip_entry_open";s:11:"description";s:50:"Opens a directory entry in a zip file for reading.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the operation was succesful";}}s:15:"zip_entry_close";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"zip_entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:49:"Directory entry resource returned by m_zip_read()";s:11:"phpdoc_name";s:9:"zip_entry";}}s:4:"name";s:15:"zip_entry_close";s:11:"description";s:55:"Closes a directory entry previously opened for reading.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the operation was succesful";}}s:14:"zip_entry_name";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"zip_entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:49:"Directory entry resource returned by m_zip_read()";s:11:"phpdoc_name";s:9:"zip_entry";}}s:4:"name";s:14:"zip_entry_name";s:11:"description";s:69:"Returns the name of the directory entry specified in the given entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"The entry name";}}s:18:"zip_entry_filesize";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"zip_entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:49:"Directory entry resource returned by m_zip_read()";s:11:"phpdoc_name";s:9:"zip_entry";}}s:4:"name";s:18:"zip_entry_filesize";s:11:"description";s:73:"Returns the filesize of the directory entry specified in the given entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"The file size";}}s:14:"zip_entry_read";a:6:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"zip_entry";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:49:"Directory entry resource returned by m_zip_read()";s:11:"phpdoc_name";s:9:"zip_entry";}i:1;a:7:{s:4:"name";s:19:"zip_entry_file_size";s:7:"default";i:1024;s:11:"default_raw";s:4:"1024";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The maximum returned data size";s:11:"phpdoc_name";s:19:"zip_entry_file_size";}}s:4:"name";s:14:"zip_entry_read";s:11:"description";s:74:"Returns the file data of the directory entry specified in the given entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:25:"The data (false: failure)";}}s:8:"m_deldir";a:5:{s:8:"filename";s:17:"sources/m_zip.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"a_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:25:"The path to the directory";s:11:"phpdoc_name";s:5:"a_dir";}}s:4:"name";s:8:"m_deldir";s:11:"description";s:138:"Delete a directory of files.From "User Contributed Notes" at http://php.net/manual/en/function.rmdir.php. Thanks flexer at cutephp dot com";s:5:"flags";a:0:{}}s:10:"init__mail";a:5:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"init__mail";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"_mail_img_rep_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:22:"_mail_img_rep_callback";s:11:"description";s:82:"Replace an HTML img tag such that it is cid'd. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:22:"_mail_css_rep_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:22:"_mail_css_rep_callback";s:11:"description";s:87:"Replace CSS image references such that it is cid'd. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:16:"_indent_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:16:"_indent_callback";s:11:"description";s:54:"Indent text lines. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:15:"_title_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:15:"_title_callback";s:11:"description";s:57:"Make titles readable. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:13:"_box_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:13:"_box_callback";s:11:"description";s:56:"Make boxes readable. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:14:"_page_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:14:"_page_callback";s:11:"description";s:65:"Make page tags into url tags. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:16:"_random_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:16:"_random_callback";s:11:"description";s:56:"Extract some random. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:17:"_shocker_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:17:"_shocker_callback";s:11:"description";s:69:"Extract all shocker/jumping text. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:17:"_comcode_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:17:"_comcode_callback";s:11:"description";s:68:"Pass tag through Comcode parser. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:29:"_semihtml_to_comcode_callback";a:6:{s:8:"filename";s:16:"sources/mail.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:29:"_semihtml_to_comcode_callback";s:11:"description";s:73:"Pass tag through semihtml_to_comcode. Callback for preg_replace_callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:21:"comcode_to_clean_text";a:6:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"message_plain";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"Comcode text to change";s:11:"phpdoc_name";s:13:"message_plain";}i:1;a:7:{s:4:"name";s:11:"for_extract";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:107:"Whether this is for generating an extract that does not need to be fully comprehended (i.e. favour brevity)";s:11:"phpdoc_name";s:11:"for_extract";}i:2;a:7:{s:4:"name";s:16:"tags_to_preserve";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:37:"List of tags to preserve (null: none)";s:11:"phpdoc_name";s:16:"tags_to_preserve";}}s:4:"name";s:21:"comcode_to_clean_text";s:11:"description";s:32:"Make some Comcode more readable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"Clean text";}}s:9:"mail_wrap";a:6:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:12:"subject_line";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"The subject of the mail in plain text";s:11:"phpdoc_name";s:12:"subject_line";}i:1;a:5:{s:4:"name";s:11:"message_raw";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:23:"The message, as Comcode";s:11:"phpdoc_name";s:11:"message_raw";}i:2;a:7:{s:4:"name";s:8:"to_email";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:90:"The destination (recipient) e-mail addresses [array of strings] (null: site staff address)";s:11:"phpdoc_name";s:8:"to_email";}i:3;a:7:{s:4:"name";s:7:"to_name";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:54:"The recipient name. Array or string. (null: site name)";s:11:"phpdoc_name";s:7:"to_name";}i:4;a:7:{s:4:"name";s:10:"from_email";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:44:"The from address (blank: site staff address)";s:11:"phpdoc_name";s:10:"from_email";}i:5;a:7:{s:4:"name";s:9:"from_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:32:"The from name (blank: site name)";s:11:"phpdoc_name";s:9:"from_name";}i:6;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:48:"The message priority (1=urgent, 3=normal, 5=low)";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:7;a:7:{s:4:"name";s:11:"attachments";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:90:"An list of attachments (each attachment being a map, absolute path=>filename) (null: none)";s:11:"phpdoc_name";s:11:"attachments";}i:8;a:7:{s:4:"name";s:5:"no_cc";s:7:"default";s:13:"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 to NOT CC to the CC address";s:11:"phpdoc_name";s:5:"no_cc";}i:9;a:7:{s:4:"name";s:2:"as";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:139:"Convert Comcode->tempcode as this member (a privilege thing: we don't want people being able to use admin rights by default!) (null: guest)";s:11:"phpdoc_name";s:2:"as";}i:10;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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:"Replace above with arbitrary admin";s:11:"phpdoc_name";s:8:"as_admin";}i:11;a:7:{s:4:"name";s:7:"in_html";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:9:"HTML-only";s:11:"phpdoc_name";s:7:"in_html";}i:12;a:7:{s:4:"name";s:19:"coming_out_of_queue";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether to bypass queueing, because this code is running as a part of the queue management tools";s:11:"phpdoc_name";s:19:"coming_out_of_queue";}i:13;a:7:{s:4:"name";s:13:"mail_template";s:7:"default";s:4:"MAIL";s:11:"default_raw";s:6:"'MAIL'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The template used to show the email";s:11:"phpdoc_name";s:13:"mail_template";}i:14;a:7:{s:4:"name";s:12:"bypass_queue";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:46:"Whether to bypass queueing (null: auto-decide)";s:11:"phpdoc_name";s:12:"bypass_queue";}i:15;a:7:{s:4:"name";s:18:"extra_cc_addresses";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:38:"Extra CC addresses to use (null: none)";s:11:"phpdoc_name";s:18:"extra_cc_addresses";}i:16;a:7:{s:4:"name";s:19:"extra_bcc_addresses";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:39:"Extra BCC addresses to use (null: none)";s:11:"phpdoc_name";s:19:"extra_bcc_addresses";}i:17;a:7:{s:4:"name";s:29:"require_recipient_valid_since";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:73:"Implement the Require-Recipient-Valid-Since header (null: no restriction)";s:11:"phpdoc_name";s:29:"require_recipient_valid_since";}}s:4:"name";s:9:"mail_wrap";s:11:"description";s:352:"Attempt to send an e-mail to the specified recipient. The mail will be forwarding to the CC address specified in the options (if there is one, and if not specified not to cc).The mail will be sent in dual HTML/text format, where the text is the unconverted Comcode source: if a member does not read HTML mail, they may wish to fallback to reading that.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:101:"A full page (not complete XHTML) piece of Tempcode to output (null: it worked so no Tempcode message)";}}s:18:"_get_image_for_cid";a:6:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"img";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:3:"URL";s:11:"phpdoc_name";s:3:"img";}i:1;a:5:{s:4:"name";s:2:"as";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:139:"Convert Comcode->tempcode as this member (a privilege thing: we don't want people being able to use admin rights by default!) (null: guest)";s:11:"phpdoc_name";s:2:"as";}i:2;a:5:{s:4:"name";s:14:"total_filesize";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:47:"Reference to where total filesize is being held";s:11:"phpdoc_name";s:14:"total_filesize";}}s:4:"name";s:18:"_get_image_for_cid";s:11:"description";s:48:"Download a URL, for use as an inline mail image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:56:"A tuple: Mime type filename, file contents (null: error)";}}s:10:"filter_css";a:6:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"CSS file";s:11:"phpdoc_name";s:1:"c";}i:1;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:21:"Theme (null: default)";s:11:"phpdoc_name";s:5:"theme";}i:2;a:5:{s:4:"name";s:7:"context";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"(X) HTML context under which CSS is filtered";s:11:"phpdoc_name";s:7:"context";}}s:4:"name";s:10:"filter_css";s:11:"description";s:285:"Filter out any CSS selector blocks from the given CSS if they definitely do not affect the given (X)HTML.While this is a clever algorithm, it isn't so clever as to actually try and match each selector against a DOM tree. If any segment of a compound selector matches, match is assumed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Filtered CSS";}}s:26:"form_to_email_entry_script";a:5:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"form_to_email_entry_script";s:11:"description";s:56:"Entry script to process a form that needs to be emailed.";s:5:"flags";a:0:{}}s:13:"form_to_email";a:5:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:6:{i:0;a:7:{s:4:"name";s:7:"subject";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:63:"The subject of the email (null: from posted subject parameter).";s:11:"phpdoc_name";s:7:"subject";}i:1;a:7:{s:4:"name";s:5:"intro";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:41:"The intro text to the mail (blank: none).";s:11:"phpdoc_name";s:5:"intro";}i:2;a:7:{s:4:"name";s:6:"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:96:"A map of fields to field titles to transmit. (null: all posted fields, except subject and email)";s:11:"phpdoc_name";s:6:"fields";}i:3;a:7:{s:4:"name";s:8:"to_email";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:76:"Email address to send to (null: look from post environment / staff address).";s:11:"phpdoc_name";s:8:"to_email";}i:4;a:7:{s:4:"name";s:5:"outro";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:41:"The outro text to the mail (blank: none).";s:11:"phpdoc_name";s:5:"outro";}i:5;a:7:{s:4:"name";s:11:"is_via_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:86:"Whether $fields refers to some POSTed fields, as opposed to a direct field->value map.";s:11:"phpdoc_name";s:11:"is_via_post";}}s:4:"name";s:13:"form_to_email";s:11:"description";s:53:"Send the posted form over email to the staff address.";s:5:"flags";a:0:{}}s:14:"_form_to_email";a:6:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:7:{i:0;a:7:{s:4:"name";s:19:"extra_boring_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:90:"Fields to skip in addition to the normal skipped ones (null: just the normal skipped ones)";s:11:"phpdoc_name";s:19:"extra_boring_fields";}i:1;a:7:{s:4:"name";s:7:"subject";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:63:"The subject of the email (null: from posted subject parameter).";s:11:"phpdoc_name";s:7:"subject";}i:2;a:7:{s:4:"name";s:5:"intro";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:41:"The intro text to the mail (blank: none).";s:11:"phpdoc_name";s:5:"intro";}i:3;a:7:{s:4:"name";s:6:"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:96:"A map of fields to field titles to transmit. (null: all posted fields, except subject and email)";s:11:"phpdoc_name";s:6:"fields";}i:4;a:7:{s:4:"name";s:8:"to_email";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:76:"Email address to send to (null: look from post environment / staff address).";s:11:"phpdoc_name";s:8:"to_email";}i:5;a:7:{s:4:"name";s:5:"outro";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:41:"The outro text to the mail (blank: none).";s:11:"phpdoc_name";s:5:"outro";}i:6;a:7:{s:4:"name";s:11:"is_via_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:86:"Whether $fields refers to some POSTed fields, as opposed to a direct field->value map.";s:11:"phpdoc_name";s:11:"is_via_post";}}s:4:"name";s:14:"_form_to_email";s:11:"description";s:33:"Worker funtion for form_to_email.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"A tuple: subject, message, to e-mail, to name, from e-mail, from name, attachments";}}s:21:"_append_form_to_email";a:5:{s:8:"filename";s:16:"sources/mail.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:11:"message_raw";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:34:"Text-email (altered by reference).";s:11:"phpdoc_name";s:11:"message_raw";}i:1;a:5:{s:4:"name";s:7:"is_tick";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether it is a tick field.";s:11:"phpdoc_name";s:7:"is_tick";}i:2;a:5:{s:4:"name";s:11:"field_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Field title.";s:11:"phpdoc_name";s:11:"field_title";}i:3;a:5:{s:4:"name";s:9:"field_val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Field value.";s:11:"phpdoc_name";s:9:"field_val";}i:4;a:5:{s:4:"name";s:10:"num_fields";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Number of fields for e-mail.";s:11:"phpdoc_name";s:10:"num_fields";}}s:4:"name";s:21:"_append_form_to_email";s:11:"description";s:32:"Append a value to a text e-mail.";s:5:"flags";a:0:{}}s:17:"_imap_server_spec";a:6:{s:8:"filename";s:17:"sources/mail2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"server";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The server hostname.";s:11:"phpdoc_name";s:6:"server";}i:1;a:5:{s:4:"name";s:4:"port";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The port.";s:11:"phpdoc_name";s:4:"port";}i:2;a:8:{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:7:"?string";s:11:"description";s:32:"The protocol (null: autodetect).";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:21:"pop3 pop3s imap imaps";}}s:4:"name";s:17:"_imap_server_spec";s:11:"description";s:35:"Get an IMAP/POP3 connection string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Connection string.";}}s:17:"find_mail_folders";a:6:{s:8:"filename";s:17:"sources/mail2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"server";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The IMAP server hostname.";s:11:"phpdoc_name";s:6:"server";}i:1;a:5:{s:4:"name";s:4:"port";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"The IMAP port.";s:11:"phpdoc_name";s:4:"port";}i:2;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The IMAP username.";s:11:"phpdoc_name";s:8:"username";}i:3;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The IMAP password.";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:17:"find_mail_folders";s:11:"description";s:18:"Find IMAP folders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"Map of folders (codenames to display labels).";}}s:16:"can_email_member";a:6:{s:8:"filename";s:17:"sources/mail2.php";s:10:"parameters";a:6:{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:14:"The member ID.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:6:"server";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:48:"The IMAP server hostname (null: use configured).";s:11:"phpdoc_name";s:6:"server";}i:2;a:7:{s:4:"name";s:4:"port";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:37:"The IMAP port (null: use configured).";s:11:"phpdoc_name";s:4:"port";}i:3;a:7:{s:4:"name";s:6:"folder";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:49:"The IMAP inbox identifier (null: use configured).";s:11:"phpdoc_name";s:6:"folder";}i:4;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:41:"The IMAP username (null: use configured).";s:11:"phpdoc_name";s:8:"username";}i:5;a:7:{s:4:"name";s:8:"password";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:41:"The IMAP password (null: use configured).";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:16:"can_email_member";s:11:"description";s:33:"Find if a member can be e-mailed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:37:"Last bounce time (null: not bounced).";}}s:15:"is_mail_bounced";a:6:{s:8:"filename";s:17:"sources/mail2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"email";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:18:"The email address.";s:11:"phpdoc_name";s:5:"email";}i:1;a:7:{s:4:"name";s:6:"server";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:48:"The IMAP server hostname (null: use configured).";s:11:"phpdoc_name";s:6:"server";}i:2;a:7:{s:4:"name";s:4:"port";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:37:"The IMAP port (null: use configured).";s:11:"phpdoc_name";s:4:"port";}i:3;a:7:{s:4:"name";s:6:"folder";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:49:"The IMAP inbox identifier (null: use configured).";s:11:"phpdoc_name";s:6:"folder";}i:4;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:41:"The IMAP username (null: use configured).";s:11:"phpdoc_name";s:8:"username";}i:5;a:7:{s:4:"name";s:8:"password";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:41:"The IMAP password (null: use configured).";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:15:"is_mail_bounced";s:11:"description";s:37:"Find if an e-mail address is bounced.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:37:"Last bounce time (null: not bounced).";}}s:21:"update_bounce_storage";a:5:{s:8:"filename";s:17:"sources/mail2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"server";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The IMAP server hostname.";s:11:"phpdoc_name";s:6:"server";}i:1;a:5:{s:4:"name";s:4:"port";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"The IMAP port.";s:11:"phpdoc_name";s:4:"port";}i:2;a:5:{s:4:"name";s:6:"folder";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The IMAP inbox identifier.";s:11:"phpdoc_name";s:6:"folder";}i:3;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The IMAP username.";s:11:"phpdoc_name";s:8:"username";}i:4;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The IMAP password.";s:11:"phpdoc_name";s:8:"password";}i:5;a:7:{s:4:"name";s:5:"since";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:170:"Only find bounces since this date (null: 8 weeks ago). This is approximate, we will actually look from a bit further back to compensate for possible timezone differences.";s:11:"phpdoc_name";s:5:"since";}}s:4:"name";s:21:"update_bounce_storage";s:11:"description";s:79:"Update the details in our bounce storage table, by looking at received bounces.";s:5:"flags";a:0:{}}s:17:"find_mail_bounces";a:6:{s:8:"filename";s:17:"sources/mail2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"server";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The IMAP server hostname.";s:11:"phpdoc_name";s:6:"server";}i:1;a:5:{s:4:"name";s:4:"port";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"The IMAP port.";s:11:"phpdoc_name";s:4:"port";}i:2;a:5:{s:4:"name";s:6:"folder";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The IMAP inbox identifier.";s:11:"phpdoc_name";s:6:"folder";}i:3;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The IMAP username.";s:11:"phpdoc_name";s:8:"username";}i:4;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The IMAP password.";s:11:"phpdoc_name";s:8:"password";}i:5;a:7:{s:4:"name";s:5:"since";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:170:"Only find bounces since this date (null: 8 weeks ago). This is approximate, we will actually look from a bit further back to compensate for possible timezone differences.";s:11:"phpdoc_name";s:5:"since";}}s:4:"name";s:17:"find_mail_bounces";s:11:"description";s:48:"Find bounces in an IMAP folder, with DB caching.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:64:"Bounces (a map between email address and details of the bounce).";}}s:18:"_find_mail_bounces";a:6:{s:8:"filename";s:17:"sources/mail2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"server";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The IMAP server hostname.";s:11:"phpdoc_name";s:6:"server";}i:1;a:5:{s:4:"name";s:4:"port";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"The IMAP port.";s:11:"phpdoc_name";s:4:"port";}i:2;a:5:{s:4:"name";s:6:"folder";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The IMAP inbox identifier.";s:11:"phpdoc_name";s:6:"folder";}i:3;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The IMAP username.";s:11:"phpdoc_name";s:8:"username";}i:4;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The IMAP password.";s:11:"phpdoc_name";s:8:"password";}i:5;a:7:{s:4:"name";s:12:"bounces_only";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Only find bounces (otherwise will find anything).";s:11:"phpdoc_name";s:12:"bounces_only";}i:6;a:7:{s:4:"name";s:5:"since";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:167:"Only find bounces since this date (null: no limit). This is approximate, we will actually look from a bit further back to compensate for possible timezone differences.";s:11:"phpdoc_name";s:5:"since";}}s:4:"name";s:18:"_find_mail_bounces";s:11:"description";s:31:"Find bounces in an IMAP folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:64:"Bounces (a map between email address and details of the bounce).";}}s:15:"manualproc_mail";a:6:{s:8:"filename";s:17:"sources/mail2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The TO address.";s:11:"phpdoc_name";s:2:"to";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The subject.";s:11:"phpdoc_name";s:7:"subject";}i:2;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The message.";s:11:"phpdoc_name";s:7:"message";}i:3;a:5:{s:4:"name";s:18:"additional_headers";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Additional headers.";s:11:"phpdoc_name";s:18:"additional_headers";}i:4;a:7:{s:4:"name";s:16:"additional_flags";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:99:"Additional stuff to send to sendmail executable (if appropriate, only works when safe mode is off).";s:11:"phpdoc_name";s:16:"additional_flags";}}s:4:"name";s:15:"manualproc_mail";s:11:"description";s:15:"Send an e-mail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:20:"init__media_renderer";a:5:{s:8:"filename";s:26:"sources/media_renderer.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"init__media_renderer";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"push_media_mode";a:5:{s:8:"filename";s:26:"sources/media_renderer.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:7:"integer";s:11:"description";s:22:"The current media mode";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:15:"push_media_mode";s:11:"description";s:19:"Set the media mode.";s:5:"flags";a:0:{}}s:14:"pop_media_mode";a:5:{s:8:"filename";s:26:"sources/media_renderer.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"pop_media_mode";s:11:"description";s:23:"Restore the media mode.";s:5:"flags";a:0:{}}s:15:"peek_media_mode";a:6:{s:8:"filename";s:26:"sources/media_renderer.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"peek_media_mode";s:11:"description";s:30:"Return the current media mode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:22:"The current media mode";}}s:20:"find_media_renderers";a:6:{s:8:"filename";s:26:"sources/media_renderer.php";s:10:"parameters";a:7:{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:7:"The URL";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"Attributes (e.g. width, height, length)";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:67:"Whether there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:4;a:7:{s:4:"name";s:16:"acceptable_media";s:7:"default";i:15;s:11:"default_raw";s:2:"15";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"Bitmask of media that we will support";s:11:"phpdoc_name";s:16:"acceptable_media";}i:5;a:7:{s:4:"name";s:8:"limit_to";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:48:"Limit to a media rendering hook (null: no limit)";s:11:"phpdoc_name";s:8:"limit_to";}i:6;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:7:"?string";s:11:"description";s:88:"Originally filename to display as a link caption where appropriate (null: use $url_safe)";s:11:"phpdoc_name";s:17:"original_filename";}}s:4:"name";s:20:"find_media_renderers";s:11:"description";s:37:"Find a media renderer hook for a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The hooks (null: cannot find one)";}}s:16:"render_media_url";a:6:{s:8:"filename";s:26:"sources/media_renderer.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:7:"The URL";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_safe";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:31:"URL to render (no sessions etc)";s:11:"phpdoc_name";s:8:"url_safe";}i:2;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:184:"Attributes (e.g. width, height, length). IMPORTANT NOTE: Only pass in 'mime_type' from user data if you have verified privileges to do so, no verification is done within the media API.";s:11:"phpdoc_name";s:10:"attributes";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:5;a:7:{s:4:"name";s:16:"acceptable_media";s:7:"default";i:15;s:11:"default_raw";s:2:"15";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"Bitmask of media that we will support";s:11:"phpdoc_name";s:16:"acceptable_media";}i:6;a:7:{s:4:"name";s:8:"limit_to";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:48:"Limit to a media rendering hook (null: no limit)";s:11:"phpdoc_name";s:8:"limit_to";}i:7;a:7:{s:4:"name";s:19:"url_to_scan_against";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:54:"The URL to do media detection against (null: use $url)";s:11:"phpdoc_name";s:19:"url_to_scan_against";}i:8;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:7:"?string";s:11:"description";s:88:"Originally filename to display as a link caption where appropriate (null: use $url_safe)";s:11:"phpdoc_name";s:17:"original_filename";}}s:4:"name";s:16:"render_media_url";s:11:"description";s:42:"Render a media URL in the best way we can.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:42:"The rendered version (null: cannot render)";}}s:33:"_create_media_template_parameters";a:6:{s:8:"filename";s:26:"sources/media_renderer.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:5:"mixed";s:11:"description";s:7:"The URL";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:168:"Attributes (Any combination of: thumb_url, width, height, length, filename, mime_type, description, filesize, framed, wysiwyg_editable, num_downloads, click_url, thumb)";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 there are admin privileges, to render dangerous media types";s:11:"phpdoc_name";s:8:"as_admin";}i:3;a:7:{s:4:"name";s:13:"source_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:39:"Member to run as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:4;a:7:{s:4:"name";s:19:"prefer_natural_size";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Let the media size itself rather than detecting a size";s:11:"phpdoc_name";s:19:"prefer_natural_size";}}s:4:"name";s:33:"_create_media_template_parameters";s:11:"description";s:79:"Turn standardised media parameters into standardised media template parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:25:"Template-ready parameters";}}s:37:"dispatch_member_mention_notifications";a:5:{s:8:"filename";s:27:"sources/member_mentions.php";s:10:"parameters";a:3:{i:0;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:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The content ID";s:11:"phpdoc_name";s:10:"content_id";}i:2;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:42:"The content submitter (null: current user)";s:11:"phpdoc_name";s:9:"submitter";}}s:4:"name";s:37:"dispatch_member_mention_notifications";s:11:"description";s:63:"Dispatch any pending member mention notifications ("mentions").";s:5:"flags";a:0:{}}s:11:"init__menus";a:5:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__menus";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:10:"build_menu";a:6:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:4:{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:56:"The type of the menu (determines which templates to use)";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:99:"The menu identifier to use (may be the name of a editable menu, or syntax to load from the Sitemap)";s:11:"phpdoc_name";s:4:"menu";}i:2;a:7:{s:4:"name";s:14:"silent_failure";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to silently return blank if the menu does not exist";s:11:"phpdoc_name";s:14:"silent_failure";}i:3;a:7:{s:4:"name";s:18:"apply_highlighting";s:7:"default";s:12:"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 to apply current-screen highlighting";s:11:"phpdoc_name";s:18:"apply_highlighting";}}s:4:"name";s:10:"build_menu";s:11:"description";s:58:"Take a menu identifier, and return a menu created from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"A pair: The generated Tempcode of the menu, the menu nodes";}}s:18:"_build_stored_menu";a:6:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:56:"The menu identifier to use (the name of a editable menu)";s:11:"phpdoc_name";s:4:"menu";}}s:4:"name";s:18:"_build_stored_menu";s:11:"description";s:53:"Take a menu identifier, and return the editable menu.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:25:"The menu branch structure";}}s:19:"_build_sitemap_menu";a:6:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:60:"The menu identifier to use (syntax to load from the Sitemap)";s:11:"phpdoc_name";s:4:"menu";}}s:4:"name";s:19:"_build_sitemap_menu";s:11:"description";s:72:"Take a menu identifier, and return a Sitemap-based menu created from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"The Sitemap node structure (called a 'branch structure' for menus)";}}s:22:"_get_menu_root_wrapper";a:6:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"_get_menu_root_wrapper";s:11:"description";s:33:"Get root branch (an empty shell).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The root branch";}}s:25:"_build_stored_menu_branch";a:6:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"item";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"The database row";s:11:"phpdoc_name";s:4:"item";}i:1;a:5:{s:4:"name";s:5:"items";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:43:"List of all the database rows for this menu";s:11:"phpdoc_name";s:5:"items";}}s:4:"name";s:25:"_build_stored_menu_branch";s:11:"description";s:44:"Build a menu branch map from a database row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"A list of menu branches";}}s:22:"_find_child_page_links";a:5:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"branches";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:8:"Branches";s:11:"phpdoc_name";s:8:"branches";}i:1;a:5:{s:4:"name";s:10:"page_links";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:16:"Page-links found";s:11:"phpdoc_name";s:10:"page_links";}}s:4:"name";s:22:"_find_child_page_links";s:11:"description";s:58:"Find all page-links under a list of children, recursively.";s:5:"flags";a:0:{}}s:21:"_append_to_page_links";a:5:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"branches";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:8:"Branches";s:11:"phpdoc_name";s:8:"branches";}i:1;a:5:{s:4:"name";s:16:"page_link_append";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"What to append to the page-links";s:11:"phpdoc_name";s:16:"page_link_append";}}s:4:"name";s:21:"_append_to_page_links";s:11:"description";s:47:"Append to all page-links in a branch structure.";s:5:"flags";a:0:{}}s:12:"_render_menu";a:6:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Menu details";s:11:"phpdoc_name";s:4:"menu";}i:1;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:60:"The member the menu is being built as (null: current member)";s:11:"phpdoc_name";s:13:"source_member";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The menu type (determines what templates get used)";s:11:"phpdoc_name";s:4:"type";}i:3;a:7:{s:4:"name";s:8:"as_admin";s:7:"default";s:13:"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 generate Comcode with admin privilege";s:11:"phpdoc_name";s:8:"as_admin";}i:4;a:7:{s:4:"name";s:18:"apply_highlighting";s:7:"default";s:12:"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 to apply current-screen highlighting";s:11:"phpdoc_name";s:18:"apply_highlighting";}}s:4:"name";s:12:"_render_menu";s:11:"description";s:26:"Render a menu to Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The generated Tempcode of the menu";}}s:19:"_render_menu_branch";a:6:{s:8:"filename";s:17:"sources/menus.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:6:"branch";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"The branch";s:11:"phpdoc_name";s:6:"branch";}i:1;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:80:"An identifier for the menu (will be used as a unique ID by menu JavaScript code)";s:11:"phpdoc_name";s:8:"codename";}i:2;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:37:"The member the menu is being built as";s:11:"phpdoc_name";s:13:"source_member";}i:3;a:5:{s:4:"name";s:5:"level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"The depth into the menu that this branch resides at";s:11:"phpdoc_name";s:5:"level";}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:50:"The menu type (determines what templates get used)";s:11:"phpdoc_name";s:4:"type";}i:5;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to generate Comcode with admin privilege";s:11:"phpdoc_name";s:8:"as_admin";}i:6;a:5:{s:4:"name";s:12:"all_branches";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"Array of all other branches";s:11:"phpdoc_name";s:12:"all_branches";}i:7;a:5:{s:4:"name";s:18:"apply_highlighting";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether to apply current-screen highlighting";s:11:"phpdoc_name";s:18:"apply_highlighting";}i:8;a:7:{s:4:"name";s:9:"the_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:9:"The level";s:11:"phpdoc_name";s:9:"the_level";}}s:4:"name";s:19:"_render_menu_branch";s:11:"description";s:33:"Render a menu branch to Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:136:"A pair: array of parameters of the menu branch (or null if unrenderable, or Tempcode of something to attach), and whether it is expanded";}}s:12:"init__menus2";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__menus2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"export_menu_csv";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"file_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:77:"The path to the CSV file (null: uploads/website_specific/cms_menu_items.csv).";s:11:"phpdoc_name";s:9:"file_path";}}s:4:"name";s:15:"export_menu_csv";s:11:"description";s:38:"Export a menu structure to a CSV file.";s:5:"flags";a:0:{}}s:15:"import_menu_csv";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"file_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:77:"The path to the CSV file (null: uploads/website_specific/cms_menu_items.csv).";s:11:"phpdoc_name";s:9:"file_path";}}s:4:"name";s:15:"import_menu_csv";s:11:"description";s:223:"Import a CSV menu structure, after ERASING whole current menu structure.This function is intended for programmers, writing upgrade scripts for a custom site (dev>staging>live).Assumes CSV was generated with export_menu_csv.";s:5:"flags";a:0:{}}s:22:"menu_management_script";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"menu_management_script";s:11:"description";s:19:"Move a menu branch.";s:5:"flags";a:0:{}}s:20:"add_menu_item_simple";a:6:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:40:"The name of the menu to add the item to.";s:11:"phpdoc_name";s:4:"menu";}i:1;a:5:{s:4:"name";s:6:"parent";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:141:"The menu item ID of the parent branch of the menu item (AUTO_LINK) / the URL of something else on the same menu (URLPATH) (null: is on root).";s:11:"phpdoc_name";s:6:"parent";}i:2;a:5:{s:4:"name";s:7:"caption";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"The caption.";s:11:"phpdoc_name";s:7:"caption";}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:10:"SHORT_TEXT";s:11:"description";s:30:"The URL (in entry point form).";s:11:"phpdoc_name";s:3:"url";}i:4;a:7:{s:4:"name";s:8:"expanded";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:33:"Whether it is an expanded branch.";s:11:"phpdoc_name";s:8:"expanded";}i:5;a:7:{s:4:"name";s:17:"check_permissions";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:68:"Whether people who may not view the entry point do not see the link.";s:11:"phpdoc_name";s:17:"check_permissions";}i:6;a:7:{s:4:"name";s:19:"dereference_caption";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the caption is a language string.";s:11:"phpdoc_name";s:19:"dereference_caption";}i:7;a:7:{s:4:"name";s:12:"caption_long";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 tooltip (blank: none).";s:11:"phpdoc_name";s:12:"caption_long";}i:8;a:7:{s:4:"name";s:10:"new_window";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 link will open in a new window.";s:11:"phpdoc_name";s:10:"new_window";}i:9;a:7:{s:4:"name";s:16:"theme_image_code";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:21:"The theme image code.";s:11:"phpdoc_name";s:16:"theme_image_code";}i:10;a:7:{s:4:"name";s:15:"include_sitemap";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:29:"An INCLUDE_SITEMAP_* constant";s:11:"phpdoc_name";s:15:"include_sitemap";}i:11;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:70:"Order to use (null: automatic, after the ones that have it specified).";s:11:"phpdoc_name";s:5:"order";}}s:4:"name";s:20:"add_menu_item_simple";s:11:"description";s:59:"Add a menu item, without giving tedious/unnecessary detail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:36:"The ID of the newly added menu item.";}}s:23:"delete_menu_item_simple";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:44:"The URL (in entry point form), or a caption.";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:23:"delete_menu_item_simple";s:11:"description";s:62:"Delete a menu item, without giving tedious/unnecessary detail.";s:5:"flags";a:0:{}}s:13:"add_menu_item";a:6:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:13:{i:0;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:40:"The name of the menu to add the item to.";s:11:"phpdoc_name";s:4:"menu";}i:1;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:44:"The relative order of this item on the menu.";s:11:"phpdoc_name";s:5:"order";}i:2;a:5:{s:4:"name";s:6:"parent";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:74:"The menu item ID of the parent branch of the menu item (null: is on root).";s:11:"phpdoc_name";s:6:"parent";}i:3;a:5:{s:4:"name";s:7:"caption";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"The caption.";s:11:"phpdoc_name";s:7:"caption";}i:4;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"The URL (in entry point form).";s:11:"phpdoc_name";s:3:"url";}i:5;a:5:{s:4:"name";s:17:"check_permissions";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:68:"Whether people who may not view the entry point do not see the link.";s:11:"phpdoc_name";s:17:"check_permissions";}i:6;a:5:{s:4:"name";s:9:"page_only";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:55:"Match-keys to identify what pages the item is shown on.";s:11:"phpdoc_name";s:9:"page_only";}i:7;a:5:{s:4:"name";s:8:"expanded";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether it is an expanded branch.";s:11:"phpdoc_name";s:8:"expanded";}i:8;a:5:{s:4:"name";s:10:"new_window";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"Whether the link will open in a new window.";s:11:"phpdoc_name";s:10:"new_window";}i:9;a:5:{s:4:"name";s:12:"caption_long";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The tooltip (blank: none).";s:11:"phpdoc_name";s:12:"caption_long";}i:10;a:7:{s:4:"name";s:16:"theme_image_code";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:21:"The theme image code.";s:11:"phpdoc_name";s:16:"theme_image_code";}i:11;a:7:{s:4:"name";s:15:"include_sitemap";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:29:"An INCLUDE_SITEMAP_* constant";s:11:"phpdoc_name";s:15:"include_sitemap";}i:12;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:29:"The ID (null: auto-increment)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"add_menu_item";s:11:"description";s:16:"Add a menu item.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:36:"The ID of the newly added menu item.";}}s:14:"edit_menu_item";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:13:{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:32:"The ID of the menu item to edit.";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:40:"The name of the menu to add the item to.";s:11:"phpdoc_name";s:4:"menu";}i:2;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:44:"The relative order of this item on the menu.";s:11:"phpdoc_name";s:5:"order";}i:3;a:5:{s:4:"name";s:6:"parent";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:74:"The menu item ID of the parent branch of the menu item (null: is on root).";s:11:"phpdoc_name";s:6:"parent";}i:4;a:5:{s:4:"name";s:7:"caption";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"The caption.";s:11:"phpdoc_name";s:7:"caption";}i:5;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"The URL (in entry point form).";s:11:"phpdoc_name";s:3:"url";}i:6;a:5:{s:4:"name";s:17:"check_permissions";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:68:"Whether people who may not view the entry point do not see the link.";s:11:"phpdoc_name";s:17:"check_permissions";}i:7;a:5:{s:4:"name";s:9:"page_only";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:55:"Match-keys to identify what pages the item is shown on.";s:11:"phpdoc_name";s:9:"page_only";}i:8;a:5:{s:4:"name";s:8:"expanded";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether it is an expanded branch.";s:11:"phpdoc_name";s:8:"expanded";}i:9;a:5:{s:4:"name";s:10:"new_window";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"Whether the link will open in a new window.";s:11:"phpdoc_name";s:10:"new_window";}i:10;a:5:{s:4:"name";s:12:"caption_long";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The tooltip (blank: none).";s:11:"phpdoc_name";s:12:"caption_long";}i:11;a:5:{s:4:"name";s:16:"theme_image_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The theme image code.";s:11:"phpdoc_name";s:16:"theme_image_code";}i:12;a:5:{s:4:"name";s:15:"include_sitemap";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:29:"An INCLUDE_SITEMAP_* constant";s:11:"phpdoc_name";s:15:"include_sitemap";}}s:4:"name";s:14:"edit_menu_item";s:11:"description";s:17:"Edit a menu item.";s:5:"flags";a:0:{}}s:16:"delete_menu_item";a:5:{s:8:"filename";s:18:"sources/menus2.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:34:"The ID of the menu item to delete.";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:16:"delete_menu_item";s:11:"description";s:19:"Delete a menu item.";s:5:"flags";a:0:{}}s:11:"delete_menu";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"menu_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"The ID of the menu.";s:11:"phpdoc_name";s:7:"menu_id";}}s:4:"name";s:11:"delete_menu";s:11:"description";s:14:"Delete a menu.";s:5:"flags";a:0:{}}s:29:"copy_from_sitemap_to_new_menu";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"target_menu";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The ID of the menu to save into.";s:11:"phpdoc_name";s:11:"target_menu";}i:1;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"Sitemap details.";s:11:"phpdoc_name";s:6:"source";}}s:4:"name";s:29:"copy_from_sitemap_to_new_menu";s:11:"description";s:41:"Copy a part of the Sitemap to a new menu.";s:5:"flags";a:0:{}}s:30:"_copy_from_sitemap_to_new_menu";a:5:{s:8:"filename";s:18:"sources/menus2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:11:"target_menu";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The ID of the menu to save into.";s:11:"phpdoc_name";s:11:"target_menu";}i:1;a:5:{s:4:"name";s:4:"node";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:34:"Sitemap node, containing children.";s:11:"phpdoc_name";s:4:"node";}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:28:"Sequence order to save with.";s:11:"phpdoc_name";s:5:"order";}i:3;a:7:{s:4:"name";s:6:"parent";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:28:"Menu parent ID (null: root).";s:11:"phpdoc_name";s:6:"parent";}}s:4:"name";s:30:"_copy_from_sitemap_to_new_menu";s:11:"description";s:47:"Copy a Sitemap node's children into a new menu.";s:5:"flags";a:0:{}}s:18:"build_comcode_menu";a:6:{s:8:"filename";s:25:"sources/menus_comcode.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"The contents of the Comcode menu tag";s:11:"phpdoc_name";s:7:"comcode";}i:1;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:81:"An identifier for this menu (will be used as a unique ID by menu javascript code)";s:11:"phpdoc_name";s:4:"menu";}i:2;a:5:{s:4:"name";s:13:"source_member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:37:"The member the menu is being built as";s:11:"phpdoc_name";s:13:"source_member";}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:50:"The menu type (determines what templates get used)";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:18:"build_comcode_menu";s:11:"description";s:61:"Takes some Comcode, and return an XHTML menu created from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The generated Tempcode of the menu";}}s:14:"get_mime_types";a:6:{s:8:"filename";s:22:"sources/mime_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:91:"Whether there are admin privileges, to render dangerous media types (client-side risk only)";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:14:"get_mime_types";s:11:"description";s:26:"Find available mime types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:14:"The MIME types";}}s:13:"get_mime_type";a:6:{s:8:"filename";s:22:"sources/mime_types.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"extension";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The file extension (no dot)";s:11:"phpdoc_name";s:9:"extension";}i:1;a:5:{s:4:"name";s:8:"as_admin";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:91:"Whether there are admin privileges, to render dangerous media types (client-side risk only)";s:11:"phpdoc_name";s:8:"as_admin";}}s:4:"name";s:13:"get_mime_type";s:11:"description";s:198:"Find the mime type for the given file extension. It does not take into account whether the file type has been white-listed or not, and returns a binary download mime type for any unknown extensions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"The MIME type";}}s:14:"gd_text_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"gd_text_script";s:11:"description";s:54:"Script to make a nice textual image, vertical writing.";s:5:"flags";a:0:{}}s:21:"simple_tracker_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"simple_tracker_script";s:11:"description";s:41:"Script to track clicks to external sites.";s:5:"flags";a:0:{}}s:14:"preview_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"preview_script";s:11:"description";s:54:"Script to show previews of content being added/edited.";s:5:"flags";a:0:{}}s:18:"cron_bridge_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"caller";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:39:"File path of the cron_bridge.php script";s:11:"phpdoc_name";s:6:"caller";}}s:4:"name";s:18:"cron_bridge_script";s:11:"description";s:60:"Script to perform Composr CRON jobs called by the real CRON.";s:5:"flags";a:0:{}}s:13:"iframe_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"iframe_script";s:11:"description";s:24:"Script to handle iframe.";s:5:"flags";a:0:{}}s:25:"page_link_redirect_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"page_link_redirect_script";s:11:"description";s:52:"Redirect the browser to where a page_link specifies.";s:5:"flags";a:0:{}}s:24:"page_link_chooser_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"page_link_chooser_script";s:11:"description";s:36:"Outputs the page-link chooser popup.";s:5:"flags";a:0:{}}s:16:"emoticons_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"emoticons_script";s:11:"description";s:46:"Shows an HTML page of all emoticons clickably.";s:5:"flags";a:0:{}}s:12:"thumb_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"thumb_script";s:11:"description";s:62:"Allows conversion of a URL to a thumbnail via a simple script.";s:5:"flags";a:0:{}}s:18:"question_ui_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"question_ui_script";s:11:"description";s:32:"Outputs a modal question dialog.";s:5:"flags";a:0:{}}s:25:"external_url_proxy_script";a:5:{s:8:"filename";s:24:"sources/misc_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"external_url_proxy_script";s:11:"description";s:22:"Proxy an external URL.";s:5:"flags";a:0:{}}s:10:"do_netlink";a:6:{s:8:"filename";s:31:"sources/multi_site_networks.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"redir_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:120:"The URL we grab our netlink from. If this is not blank, instead of getting a netlink block, we direct to a netlink site.";s:11:"phpdoc_name";s:9:"redir_url";}}s:4:"name";s:10:"do_netlink";s:11:"description";s:47:"Get a netlink block / direct to a netlink site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The netlink block";}}s:27:"get_news_category_image_url";a:6:{s:8:"filename";s:16:"sources/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"nc_img";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"URL / theme image code / blank";s:11:"phpdoc_name";s:6:"nc_img";}}s:4:"name";s:27:"get_news_category_image_url";s:11:"description";s:80:"Find a news category image from a string that may have multiple interpretations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:14:"URL (or blank)";}}s:15:"render_news_box";a:6:{s:8:"filename";s:16:"sources/news.php";s:10:"parameters";a:5:{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:12:"The news row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The zone our news module is in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:5:"brief";s:7:"default";s:13:"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 use the brief styling";s:11:"phpdoc_name";s:5:"brief";}i:4;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:15:"render_news_box";s:11:"description";s:22:"Show a news entry box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The box";}}s:24:"render_news_category_box";a:6:{s:8:"filename";s:16:"sources/news.php";s:10:"parameters";a:6:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:20:"attach_to_url_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:129:"Whether to copy through any filter parameters in the URL, under the basis that they are associated with what this box is browsing";s:11:"phpdoc_name";s:20:"attach_to_url_filter";}i:4;a:7:{s:4:"name";s:5:"blogs";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:54:"What to show (null: news and blogs, 0: news, 1: blogs)";s:11:"phpdoc_name";s:5:"blogs";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:24:"render_news_category_box";s:11:"description";s:64:"Get Tempcode for a news category 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:37:"create_selection_list_news_categories";a:6:{s:8:"filename";s:16:"sources/news.php";s:10:"parameters";a:7:{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:6:"?mixed";s:11:"description";s:63:"The selected news category. Array or AUTO_LINK (null: personal)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:28:"show_all_personal_categories";s:7:"default";s:13:"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 to add all personal categories into the list (for things like the adminzone, where all categories must be shown, regardless of permissions)";s:11:"phpdoc_name";s:28:"show_all_personal_categories";}i:2;a:7:{s:4:"name";s:14:"addable_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:67:"Whether to only show for what may be added to by the current member";s:11:"phpdoc_name";s:14:"addable_filter";}i:3;a:7:{s:4:"name";s:13:"only_existing";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:85:"Whether to limit to only existing cats (otherwise we dynamically add unstarted blogs)";s:11:"phpdoc_name";s:13:"only_existing";}i:4;a:7:{s:4:"name";s:10:"only_blogs";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:99:"Whether to limit to only show blog categories (null: don't care, true: blogs only, false: no blogs)";s:11:"phpdoc_name";s:10:"only_blogs";}i:5;a:7:{s:4:"name";s:24:"prefer_not_blog_selected";s:7:"default";s:13:"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 prefer to choose a non-blog category as the default";s:11:"phpdoc_name";s:24:"prefer_not_blog_selected";}i:6;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:37:"create_selection_list_news_categories";s:11:"description";s:51:"Get a nice formatted XHTML list of news categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"The Tempcode for the news category select list";}}s:26:"create_selection_list_news";a:6:{s:8:"filename";s:16:"sources/news.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"it";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:36:"The selected news entry (null: none)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:10:"only_owned";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:61:"Limit news to those submitted by this member (null: show all)";s:11:"phpdoc_name";s:10:"only_owned";}i:2;a:7:{s:4:"name";s:15:"editable_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 only show for what may be edited by the current member";s:11:"phpdoc_name";s:15:"editable_filter";}i:3;a:7:{s:4:"name";s:12:"only_in_blog";s:7:"default";s:13:"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 only show blog posts";s:11:"phpdoc_name";s:12:"only_in_blog";}}s:4:"name";s:26:"create_selection_list_news";s:11:"description";s:40:"Get a nice formatted XHTML list of news.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:17:"add_news_category";a:6:{s:8:"filename";s:17:"sources/news2.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:10:"SHORT_TEXT";s:11:"description";s:23:"The news category title";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:3:"img";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:62:"The theme image ID of the picture to use for the news category";s:11:"phpdoc_name";s:3:"img";}i:2;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"Notes for the news category";s:11:"phpdoc_name";s:5:"notes";}i:3;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:24:"The owner (null: public)";s:11:"phpdoc_name";s:5:"owner";}i:4;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"add_news_category";s:11:"description";s:45:"Add a news category of the specified details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:31:"The ID of our new news category";}}s:18:"edit_news_category";a:5:{s:8:"filename";s:17:"sources/news2.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:25:"The news category to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:28:"The title (null: keep as-is)";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:3:"img";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:28:"The image (null: keep as-is)";s:11:"phpdoc_name";s:3:"img";}i:3;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:28:"The notes (null: keep as-is)";s:11:"phpdoc_name";s:5:"notes";}i:4;a:5:{s:4:"name";s:5:"owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:24:"The owner (null: public)";s:11:"phpdoc_name";s:5:"owner";}}s:4:"name";s:18:"edit_news_category";s:11:"description";s:21:"Edit a news category.";s:5:"flags";a:0:{}}s:20:"delete_news_category";a:5:{s:8:"filename";s:17:"sources/news2.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:27:"The news category to delete";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_news_category";s:11:"description";s:23:"Delete a news category.";s:5:"flags";a:0:{}}s:8:"add_news";a:6:{s:8:"filename";s:17:"sources/news2.php";s:10:"parameters";a:20:{i:0;a:5:{s:4:"name";s:5:"title";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:1;a:5:{s:4:"name";s:4:"news";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:54:"The news summary (or if not an article, the full news)";s:11:"phpdoc_name";s:4:"news";}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:8:"?ID_TEXT";s:11:"description";s:120:"The news author (possibly, a link to an existing author in the system, but does not need to be) (null: current username)";s:11:"phpdoc_name";s:6:"author";}i:3;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:35:"Whether the news has been validated";s:11:"phpdoc_name";s:9:"validated";}i:4;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:6:"BINARY";s:11:"description";s:29:"Whether the news may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:5;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:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:6;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:6:"BINARY";s:11:"description";s:36:"Whether the news may have trackbacks";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:7;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 news";s:11:"phpdoc_name";s:5:"notes";}i:8;a:7:{s:4:"name";s:12:"news_article";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 news entry (blank means no entry)";s:11:"phpdoc_name";s:12:"news_article";}i:9;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:42:"The primary news category (null: personal)";s:11:"phpdoc_name";s:18:"main_news_category";}i:10;a:7:{s:4:"name";s:15:"news_categories";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:59:"The IDs of the news categories that this is in (null: none)";s:11:"phpdoc_name";s:15:"news_categories";}i:11;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:34:"The time of submission (null: now)";s:11:"phpdoc_name";s:4:"time";}i:12;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:41:"The news submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:13;a:7:{s:4:"name";s:5:"views";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:39:"The number of views the article has had";s:11:"phpdoc_name";s:5:"views";}i:14;a:7:{s:4:"name";s:9:"edit_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:27:"The edit date (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}i:15;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:37:"Force an ID (null: don't force an ID)";s:11:"phpdoc_name";s:2:"id";}i:16;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:17;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:18;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:19;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:8:"add_news";s:11:"description";s:84:"Adds a news entry to the database, and send out the news to any RSS cloud listeners.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:29:"The ID of the news just added";}}s:13:"send_rss_ping";a:6:{s:8:"filename";s:17:"sources/news2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:11:"show_errors";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether to show errors";s:11:"phpdoc_name";s:11:"show_errors";}}s:4:"name";s:13:"send_rss_ping";s:11:"description";s:39:"Send out a ping to configured services.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"HTTP result output";}}s:9:"edit_news";a:5:{s:8:"filename";s:17:"sources/news2.php";s:10:"parameters";a:21:{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:26:"The ID of the news to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:2;a:5:{s:4:"name";s:4:"news";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:54:"The news summary (or if not an article, the full news)";s:11:"phpdoc_name";s:4:"news";}i:3;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:95:"The news author (possibly, a link to an existing author in the system, but does not need to be)";s:11:"phpdoc_name";s:6:"author";}i:4;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:35:"Whether the news has been validated";s:11:"phpdoc_name";s:9:"validated";}i:5;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:29:"Whether the news may be rated";s:11:"phpdoc_name";s:12:"allow_rating";}i:6;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:7;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether the news may have trackbacks";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:8;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"Notes for the news";s:11:"phpdoc_name";s:5:"notes";}i:9;a:5:{s:4:"name";s:12:"news_article";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:37:"The news entry (blank means no entry)";s:11:"phpdoc_name";s:12:"news_article";}i:10;a:5:{s:4:"name";s:18:"main_news_category";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:42:"The primary news category (null: personal)";s:11:"phpdoc_name";s:18:"main_news_category";}i:11;a:5:{s:4:"name";s:15:"news_categories";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:68:"The IDs of the news categories that this is in (null: do not change)";s:11:"phpdoc_name";s:15:"news_categories";}i:12;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:13;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:14;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:88:"URL to the image for the news entry (blank: use cat image) (null: don't delete existing)";s:11:"phpdoc_name";s:5:"image";}i:15;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:16;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:17;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:18;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:19;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:20;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:9:"edit_news";s:11:"description";s:18:"Edit a news entry.";s:5:"flags";a:0:{}}s:26:"dispatch_news_notification";a:5:{s:8:"filename";s:17:"sources/news2.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:18:"The ID of the news";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:18:"main_news_category";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:22:"The main news category";s:11:"phpdoc_name";s:18:"main_news_category";}}s:4:"name";s:26:"dispatch_news_notification";s:11:"description";s:41:"Send out a notification of some new news.";s:5:"flags";a:0:{}}s:11:"delete_news";a:5:{s:8:"filename";s:17:"sources/news2.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:26:"The ID of the news to edit";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:11:"delete_news";s:11:"description";s:20:"Delete a news entry.";s:5:"flags";a:0:{}}s:17:"import_rss_fields";a:6:{s:8:"filename";s:17:"sources/news2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"import_to_blog";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to import to blogs, by default";s:11:"phpdoc_name";s:14:"import_to_blog";}}s:4:"name";s:17:"import_rss_fields";s:11:"description";s:58:"Import wordpress dbGet UI fields for starting news import.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"UI fields";}}s:22:"_get_wordpress_db_data";a:6:{s:8:"filename";s:17:"sources/news2.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"_get_wordpress_db_data";s:11:"description";s:30:"Get data from the Wordpress DB";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"Result structure";}}s:24:"import_foreign_news_html";a:6:{s:8:"filename";s:17:"sources/news2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:4:"HTML";s:11:"phpdoc_name";s:4:"html";}i:1;a:7:{s:4:"name";s:16:"force_linebreaks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:56:"Whether to add in HTML line breaks from whitespace ones.";s:11:"phpdoc_name";s:16:"force_linebreaks";}}s:4:"name";s:24:"import_foreign_news_html";s:11:"description";s:27:"Get data from wordpress DB.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"Comcode";}}s:38:"_news_import_grab_images_and_fix_links";a:5:{s:8:"filename";s:17:"sources/news2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"download_images";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to download images to local";s:11:"phpdoc_name";s:15:"download_images";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:26:"HTML (passed by reference)";s:11:"phpdoc_name";s:4:"data";}i:2;a:5:{s:4:"name";s:13:"imported_news";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:115:"Imported items, in Composr's RSS-parsed format [list of maps containing full_url and import_id] (used to fix links)";s:11:"phpdoc_name";s:13:"imported_news";}}s:4:"name";s:38:"_news_import_grab_images_and_fix_links";s:11:"description";s:177:"Download remote images in some HTML and replace with local references under uploads/website_specific AND fix any links to other articles being imported to make them local links.";s:5:"flags";a:0:{}}s:23:"_news_import_grab_image";a:5:{s:8:"filename";s:17:"sources/news2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:26:"HTML (passed by reference)";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:3:"URL";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:23:"_news_import_grab_image";s:11:"description";s:56:"Download a specific remote image and sub in the new URL.";s:5:"flags";a:0:{}}s:18:"build_news_sitemap";a:5:{s:8:"filename";s:24:"sources/news_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"build_news_sitemap";s:11:"description";s:75:"Top level function to (re)generate a news Sitemap (xml file, Google-style).";s:5:"flags";a:0:{}}s:29:"incoming_bounced_email_script";a:5:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"incoming_bounced_email_script";s:11:"description";s:43:"Script to read in an e-mailed ticket/reply.";s:5:"flags";a:0:{}}s:21:"basic_newsletter_join";a:6:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:5:"email";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:35:"The email address of the subscriber";s:11:"phpdoc_name";s:5:"email";}i:1;a:8:{s:4:"name";s:14:"interest_level";s:7:"default";i:4;s:11:"default_raw";s:1:"4";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The interest level";s:11:"phpdoc_name";s:14:"interest_level";s:5:"range";s:3:"1 4";}i:2;a:7:{s:4:"name";s:8:"language";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:26:"The language (null: users)";s:11:"phpdoc_name";s:8:"language";}i:3;a:7:{s:4:"name";s:16:"get_confirm_mail";s:7:"default";s:13:"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 require a confirmation mail";s:11:"phpdoc_name";s:16:"get_confirm_mail";}i:4;a:7:{s:4:"name";s:13:"newsletter_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 newsletter to join (null: the first)";s:11:"phpdoc_name";s:13:"newsletter_id";}i:5;a:7:{s:4:"name";s:8:"forename";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:20:"Subscribers forename";s:11:"phpdoc_name";s:8:"forename";}i:6;a:7:{s:4:"name";s:7:"surname";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:19:"Subscribers surname";s:11:"phpdoc_name";s:7:"surname";}}s:4:"name";s:21:"basic_newsletter_join";s:11:"description";s:139:"Add to the newsletter, in the simplest way.No authorisation support here, checks it works only for non-subscribed or non-confirmed members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"Newsletter password";}}s:22:"actual_send_newsletter";a:6:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"The newsletter message";s:11:"phpdoc_name";s:7:"message";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The newsletter subject";s:11:"phpdoc_name";s:7:"subject";}i:2;a:5:{s:4:"name";s:8:"language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:12:"The language";s:11:"phpdoc_name";s:8:"language";}i:3;a:5:{s:4:"name";s:12:"send_details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:87:"A map describing what newsletters and newsletter levels the newsletter is being sent to";s:11:"phpdoc_name";s:12:"send_details";}i:4;a:7:{s:4:"name";s:9:"html_only";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 to only send in HTML format";s:11:"phpdoc_name";s:9:"html_only";}i:5;a:7:{s:4:"name";s:10:"from_email";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:71:"Override the email address the mail is sent from (blank: staff address)";s:11:"phpdoc_name";s:10:"from_email";}i:6;a:7:{s:4:"name";s:9:"from_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:58:"Override the name the mail is sent from (blank: site name)";s:11:"phpdoc_name";s:9:"from_name";}i:7;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:48:"The message priority (1=urgent, 3=normal, 5=low)";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:8;a:7:{s:4:"name";s:8:"csv_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:120:"CSV data of extra subscribers (blank: none). This is in the same Composr newsletter CSV format that we export elsewhere.";s:11:"phpdoc_name";s:8:"csv_data";}i:9;a:7:{s:4:"name";s:13:"mail_template";s:7:"default";s:4:"MAIL";s:11:"default_raw";s:6:"'MAIL'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The template used to show the email";s:11:"phpdoc_name";s:13:"mail_template";}}s:4:"name";s:22:"actual_send_newsletter";s:11:"description";s:24:"Send out the newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:2:"UI";}}s:22:"newsletter_who_send_to";a:6:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:12:"send_details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:87:"A map describing what newsletters and newsletter levels the newsletter is being sent to";s:11:"phpdoc_name";s:12:"send_details";}i:1;a:5:{s:4:"name";s:8:"language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:12:"The language";s:11:"phpdoc_name";s:8:"language";}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:91:"Start position in result set (results are returned in parallel for each category of result)";s:11:"phpdoc_name";s:5:"start";}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:44:"Maximum records to return from each category";s:11:"phpdoc_name";s:3:"max";}i:4;a:7:{s:4:"name";s:12:"get_raw_rows";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether to get raw rows rather than mailer-ready correspondance lists";s:11:"phpdoc_name";s:12:"get_raw_rows";}i:5;a:7:{s:4:"name";s:8:"csv_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:36:"Serialized CSV data to also consider";s:11:"phpdoc_name";s:8:"csv_data";}i:6;a:7:{s:4:"name";s:12:"strict_level";s:7:"default";s:13:"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 to do exact level matching, rather than "at least" matching";s:11:"phpdoc_name";s:12:"strict_level";}}s:4:"name";s:22:"newsletter_who_send_to";s:11:"description";s:49:"Find a group of people the newsletter will go to.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:260:"Returns a tuple of corresponding detail lists, emails,hashes,usernames,forenames,surnames,ids, and a record count for levels (depending on requests: csv, 1, , g) [record counts not returned if $start is not zero, for performance reasons]";}}s:32:"newsletter_variable_substitution";a:6:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"The original newsletter message";s:11:"phpdoc_name";s:7:"message";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The newsletter subject";s:11:"phpdoc_name";s:7:"subject";}i:2;a:5:{s:4:"name";s:8:"forename";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:37:"Subscribers forename (blank: unknown)";s:11:"phpdoc_name";s:8:"forename";}i:3;a:5:{s:4:"name";s:7:"surname";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"Subscribers surname (blank: unknown)";s:11:"phpdoc_name";s:7:"surname";}i:4;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"Subscribers name (or username)";s:11:"phpdoc_name";s:4:"name";}i:5;a:5:{s:4:"name";s:13:"email_address";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:25:"Subscribers email address";s:11:"phpdoc_name";s:13:"email_address";}i:6;a:5:{s:4:"name";s:6:"sendid";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:148:"Specially encoded ID of subscriber (begins either 'n' for newsletter subscriber, or 'm' for member - then has normal subscriber/member ID following)";s:11:"phpdoc_name";s:6:"sendid";}i:7;a:5:{s:4:"name";s:4:"hash";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:78:"Double encoded password hash of subscriber (blank: can not unsubscribe by URL)";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:32:"newsletter_variable_substitution";s:11:"description";s:28:"Sub in newsletter variables.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"The new newsletter message";}}s:21:"newsletter_block_list";a:6:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"newsletter_block_list";s:11:"description";s:31:"Work out newsletter block list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"List of blocked email addresses (actually a map)";}}s:14:"add_newsletter";a:6:{s:8:"filename";s:22:"sources/newsletter.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:10:"SHORT_TEXT";s:11:"description";s:9:"The 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:9:"LONG_TEXT";s:11:"description";s:15:"The description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:14:"add_newsletter";s:11:"description";s:18:"Make a newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:15:"edit_newsletter";a:5:{s:8:"filename";s:22:"sources/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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";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:"edit_newsletter";s:11:"description";s:18:"Edit a newsletter.";s:5:"flags";a:0:{}}s:17:"delete_newsletter";a:5:{s:8:"filename";s:22:"sources/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:9:"AUTO_LINK";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"delete_newsletter";s:11:"description";s:20:"Delete a newsletter.";s:5:"flags";a:0:{}}s:23:"add_periodic_newsletter";a:6:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:7:"Subject";s:11:"phpdoc_name";s:7:"subject";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:7:"Message";s:11:"phpdoc_name";s:7:"message";}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:20:"Language to send for";s:11:"phpdoc_name";s:4:"lang";}i:3;a:5:{s:4:"name";s:12:"send_details";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The data sent in each newsletter";s:11:"phpdoc_name";s:12:"send_details";}i:4;a:5:{s:4:"name";s:9:"html_only";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:28:"Whether to send in HTML only";s:11:"phpdoc_name";s:9:"html_only";}i:5;a:5:{s:4:"name";s:10:"from_email";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"From address";s:11:"phpdoc_name";s:10:"from_email";}i:6;a:5:{s:4:"name";s:9:"from_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"From name";s:11:"phpdoc_name";s:9:"from_name";}i:7;a:5:{s:4:"name";s:8:"priority";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:8:"Priority";s:11:"phpdoc_name";s:8:"priority";}i:8;a:5:{s:4:"name";s:8:"csv_data";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"CSV data of who to send to";s:11:"phpdoc_name";s:8:"csv_data";}i:9;a:6:{s:4:"name";s:9:"frequency";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Send frequency";s:11:"phpdoc_name";s:9:"frequency";s:3:"set";s:23:"weekly biweekly monthly";}i:10;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:18:"Weekday to send on";s:11:"phpdoc_name";s:3:"day";}i:11;a:7:{s:4:"name";s:7:"in_full";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:19:"Embed full articles";s:11:"phpdoc_name";s:7:"in_full";}i:12;a:7:{s:4:"name";s:8:"template";s:7:"default";s:4:"MAIL";s:11:"default_raw";s:6:"'MAIL'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"Mail template to use, e.g. MAIL";s:11:"phpdoc_name";s:8:"template";}i:13;a:7:{s:4:"name";s:9:"last_sent";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:30:"When was last sent (null: now)";s:11:"phpdoc_name";s:9:"last_sent";}}s:4:"name";s:23:"add_periodic_newsletter";s:11:"description";s:27:"Make a periodic newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:24:"edit_periodic_newsletter";a:5:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:15:{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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:7:"Subject";s:11:"phpdoc_name";s:7:"subject";}i:2;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:7:"Message";s:11:"phpdoc_name";s:7:"message";}i:3;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:20:"Language to send for";s:11:"phpdoc_name";s:4:"lang";}i:4;a:5:{s:4:"name";s:12:"send_details";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"The data sent in each newsletter";s:11:"phpdoc_name";s:12:"send_details";}i:5;a:5:{s:4:"name";s:9:"html_only";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:28:"Whether to send in HTML only";s:11:"phpdoc_name";s:9:"html_only";}i:6;a:5:{s:4:"name";s:10:"from_email";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"From address";s:11:"phpdoc_name";s:10:"from_email";}i:7;a:5:{s:4:"name";s:9:"from_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"From name";s:11:"phpdoc_name";s:9:"from_name";}i:8;a:5:{s:4:"name";s:8:"priority";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:8:"Priority";s:11:"phpdoc_name";s:8:"priority";}i:9;a:5:{s:4:"name";s:8:"csv_data";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"CSV data of who to send to";s:11:"phpdoc_name";s:8:"csv_data";}i:10;a:6:{s:4:"name";s:9:"frequency";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"Send frequency";s:11:"phpdoc_name";s:9:"frequency";s:3:"set";s:23:"weekly biweekly monthly";}i:11;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:18:"Weekday to send on";s:11:"phpdoc_name";s:3:"day";}i:12;a:5:{s:4:"name";s:7:"in_full";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:19:"Embed full articles";s:11:"phpdoc_name";s:7:"in_full";}i:13;a:5:{s:4:"name";s:8:"template";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"Mail template to use, e.g. MAIL";s:11:"phpdoc_name";s:8:"template";}i:14;a:7:{s:4:"name";s:9:"last_sent";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:"When was last sent (null: don't change)";s:11:"phpdoc_name";s:9:"last_sent";}}s:4:"name";s:24:"edit_periodic_newsletter";s:11:"description";s:27:"Edit a periodic newsletter.";s:5:"flags";a:0:{}}s:26:"delete_periodic_newsletter";a:5:{s:8:"filename";s:22:"sources/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:9:"AUTO_LINK";s:11:"description";s:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:26:"delete_periodic_newsletter";s:11:"description";s:29:"Delete a periodic newsletter.";s:5:"flags";a:0:{}}s:25:"add_newsletter_subscriber";a:6:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:5:"email";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:35:"The email address of the subscriber";s:11:"phpdoc_name";s:5:"email";}i:1;a:5:{s:4:"name";s:9:"join_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:13:"The join time";s:11:"phpdoc_name";s:9:"join_time";}i:2;a:5:{s:4:"name";s:12:"code_confirm";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Confirm code";s:11:"phpdoc_name";s:12:"code_confirm";}i:3;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"Newsletter password (hashed)";s:11:"phpdoc_name";s:8:"password";}i:4;a:5:{s:4:"name";s:4:"salt";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Newsletter salt";s:11:"phpdoc_name";s:4:"salt";}i:5;a:5:{s:4:"name";s:8:"language";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:12:"The language";s:11:"phpdoc_name";s:8:"language";}i:6;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:7;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:25:"add_newsletter_subscriber";s:11:"description";s:85:"Add a newsletter subscriber to the system (not to any particular newsletters though).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:13:"Subscriber ID";}}s:26:"edit_newsletter_subscriber";a:5:{s:8:"filename";s:22:"sources/newsletter.php";s:10:"parameters";a:9:{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:"Subscriber ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"email";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?EMAIL";s:11:"description";s:56:"The email address of the subscriber (null: don't change)";s:11:"phpdoc_name";s:5:"email";}i:2;a:7:{s:4:"name";s:9:"join_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:34:"The join time (null: don't change)";s:11:"phpdoc_name";s:9:"join_time";}i:3;a:7:{s:4:"name";s:12:"code_confirm";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:33:"Confirm code (null: don't change)";s:11:"phpdoc_name";s:12:"code_confirm";}i:4;a:7:{s:4:"name";s:8:"password";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:49:"Newsletter password (hashed) (null: don't change)";s:11:"phpdoc_name";s:8:"password";}i:5;a:7:{s:4:"name";s:4:"salt";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:36:"Newsletter salt (null: don't change)";s:11:"phpdoc_name";s:4:"salt";}i:6;a:7:{s:4:"name";s:8:"language";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:33:"The language (null: don't change)";s:11:"phpdoc_name";s:8:"language";}i:7;a:7:{s:4:"name";s:8:"forename";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:41:"Subscribers forename (null: don't change)";s:11:"phpdoc_name";s:8:"forename";}i:8;a:7:{s:4:"name";s:7:"surname";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:40:"Subscribers surname (null: don't change)";s:11:"phpdoc_name";s:7:"surname";}}s:4:"name";s:26:"edit_newsletter_subscriber";s:11:"description";s:85:"Add a newsletter subscriber to the system (not to any particular newsletters though).";s:5:"flags";a:0:{}}s:28:"delete_newsletter_subscriber";a:5:{s:8:"filename";s:22:"sources/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:9:"AUTO_LINK";s:11:"description";s:13:"Subscriber ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:28:"delete_newsletter_subscriber";s:11:"description";s:85:"Add a newsletter subscriber to the system (not to any particular newsletters though).";s:5:"flags";a:0:{}}s:25:"init__notification_poller";a:5:{s:8:"filename";s:31:"sources/notification_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"init__notification_poller";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"notification_script";a:5:{s:8:"filename";s:31:"sources/notification_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"notification_script";s:11:"description";s:26:"Notification entry script.";s:5:"flags";a:0:{}}s:33:"notification_mark_all_read_script";a:5:{s:8:"filename";s:31:"sources/notification_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"notification_mark_all_read_script";s:11:"description";s:26:"Notification entry script.";s:5:"flags";a:0:{}}s:27:"notification_display_script";a:5:{s:8:"filename";s:31:"sources/notification_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"notification_display_script";s:11:"description";s:26:"Notification entry script.";s:5:"flags";a:0:{}}s:26:"notification_poller_script";a:5:{s:8:"filename";s:31:"sources/notification_poller.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"notification_poller_script";s:11:"description";s:26:"Notification entry script.";s:5:"flags";a:0:{}}s:21:"get_web_notifications";a:6:{s:8:"filename";s:31:"sources/notification_poller.php";s:10:"parameters";a:2:{i:0;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:48:"Number of notifications to show (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:1;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:12:"Start offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:21:"get_web_notifications";s:11:"description";s:32:"Get web notification templating.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"A pair: Templating, Max rows";}}s:23:"web_notification_to_xml";a:6:{s:8:"filename";s:31:"sources/notification_poller.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:16:"Notification row";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:23:"web_notification_to_xml";s:11:"description";s:69:"Get XML for sending a notification to the current user's web browser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The XML";}}s:7:"get_pts";a:6:{s:8:"filename";s:31:"sources/notification_poller.php";s:10:"parameters";a:2:{i:0;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:38:"Number of PTs to show (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:1;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:12:"Start offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:7:"get_pts";s:11:"description";s:19:"Get PTs templating.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"A pair: Templating, Max rows";}}s:9:"pt_to_xml";a:6:{s:8:"filename";s:31:"sources/notification_poller.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:16:"Notification row";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:9:"pt_to_xml";s:11:"description";s:65:"Get XML for sending a PT alert to the current user's web browser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The XML";}}s:19:"init__notifications";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"init__notifications";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:29:"_get_notification_ob_for_code";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The notification code to use";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:29:"_get_notification_ob_for_code";s:11:"description";s:64:"Find the notification object for a particular notification code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:42:"Notification object (null: could not find)";}}s:20:"do_notification_lang";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The language string ID";s:11:"phpdoc_name";s:8:"codename";}i:1;a:7:{s:4:"name";s:10:"parameter1";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:68:"The first parameter [string or Tempcode] (replaces {1}) (null: none)";s:11:"phpdoc_name";s:10:"parameter1";}i:2;a:7:{s:4:"name";s:10:"parameter2";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:69:"The second parameter [string or Tempcode] (replaces {2}) (null: none)";s:11:"phpdoc_name";s:10:"parameter2";}i:3;a:7:{s:4:"name";s:10:"parameter3";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:131:"The third parameter (replaces {3}). May be an array of [of string or Tempcode], to allow any number of additional args (null: none)";s:11:"phpdoc_name";s:10:"parameter3";}i:4;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:14:"?LANGUAGE_NAME";s:11:"description";s:42:"The language to use (null: users language)";s:11:"phpdoc_name";s:4:"lang";}i:5;a:7:{s:4:"name";s:14:"require_result";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to cause Composr to exit if the lookup does not succeed";s:11:"phpdoc_name";s:14:"require_result";}}s:4:"name";s:20:"do_notification_lang";s:11:"description";s:198:"Wraps do_lang, keeping a record of the last call. You can use when building the notification $message.This allows notification handlers to possibly repeat the call with a customised language string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:95:"The human-readable content (null: not found). String normally. Tempcode if Tempcode parameters.";}}s:24:"do_notification_template";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The codename of the template being loaded";s:11:"phpdoc_name";s:8:"codename";}i:1;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:208:"A map of parameters for the template (key to value); you can have any number of parameters of any name, there is no set standard; having a _GUID parameter of random value is a convention (null: no parameters)";s:11:"phpdoc_name";s:10:"parameters";}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:14:"?LANGUAGE_NAME";s:11:"description";s:105:"The language to load the template in (templates can embed language references) (null: users own language)";s:11:"phpdoc_name";s:4:"lang";}i:3;a:7:{s:4:"name";s:11:"light_error";s:7:"default";s:13:"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 not produce a stack dump if the template is missing";s:11:"phpdoc_name";s:11:"light_error";}i:4;a:7:{s:4:"name";s:8:"fallback";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:72:"Alternate template to use if the primary one does not exist (null: none)";s:11:"phpdoc_name";s:8:"fallback";}i:5;a:8:{s:4:"name";s:6:"suffix";s:7:"default";s:4:".tpl";s:11:"default_raw";s:6:"'.tpl'";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:6;a:8:{s:4:"name";s:9:"directory";s:7:"default";s:9:"templates";s:11:"default_raw";s:11:"'templates'";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:7;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:34:"Theme to use (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:24:"do_notification_template";s:11:"description";s:195:"Wraps do_template, keeping a record of the last call. You can use when building the notification $message.This allows notification handlers to possibly repeat the call with a customised template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The Tempcode for this template";}}s:21:"dispatch_notification";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The notification code to use";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:13:"code_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:13:"code_category";}i:2;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Message subject (in Comcode)";s:11:"phpdoc_name";s:7:"subject";}i:3;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"Message body (in Comcode)";s:11:"phpdoc_name";s:7:"message";}i:4;a:7:{s:4:"name";s:13:"to_member_ids";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:60:"List of enabled members to limit sending to (null: everyone)";s:11:"phpdoc_name";s:13:"to_member_ids";}i:5;a:7:{s:4:"name";s:14:"from_member_id";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:126:"The member ID doing the sending. Either a MEMBER or a negative number (e.g. A_FROM_SYSTEM_UNPRIVILEGED) (null: current member)";s:11:"phpdoc_name";s:14:"from_member_id";}i:6;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:48:"The message priority (1=urgent, 3=normal, 5=low)";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:7;a:7:{s:4:"name";s:31:"store_in_staff_messaging_system";s:7:"default";s:13:"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 create a topic for discussion (ignored if the staff_messaging addon not installed)";s:11:"phpdoc_name";s:31:"store_in_staff_messaging_system";}i:8;a:7:{s:4:"name";s:5:"no_cc";s:7:"default";s:13:"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 to NOT CC to the CC address";s:11:"phpdoc_name";s:5:"no_cc";}i:9;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:10;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:11;a:7:{s:4:"name";s:14:"subject_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:85:"Only relevant if $store_in_staff_messaging_system is true: subject prefix for storage";s:11:"phpdoc_name";s:14:"subject_prefix";}i:12;a:7:{s:4:"name";s:14:"subject_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:85:"Only relevant if $store_in_staff_messaging_system is true: subject suffix for storage";s:11:"phpdoc_name";s:14:"subject_suffix";}i:13;a:7:{s:4:"name";s:11:"body_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:82:"Only relevant if $store_in_staff_messaging_system is true: body prefix for storage";s:11:"phpdoc_name";s:11:"body_prefix";}i:14;a:7:{s:4:"name";s:11:"body_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:82:"Only relevant if $store_in_staff_messaging_system is true: body suffix for storage";s:11:"phpdoc_name";s:11:"body_suffix";}i:15;a:7:{s:4:"name";s:11:"attachments";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:80:"A list of attachments (each attachment being a map, path=>filename) (null: none)";s:11:"phpdoc_name";s:11:"attachments";}i:16;a:7:{s:4:"name";s:13:"use_real_from";s:7:"default";s:13:"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 we will make a "reply to" direct -- we only do this if we're allowed to disclose email addresses for this particular notification type (i.e. if it's a direct contact)";s:11:"phpdoc_name";s:13:"use_real_from";}}s:4:"name";s:21:"dispatch_notification";s:11:"description";s:43:"Send out a notification to members enabled.";s:5:"flags";a:0:{}}s:31:"_notification_setting_available";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"setting";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The notification setting";s:11:"phpdoc_name";s:7:"setting";}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:47:"Member to check for (null: just check globally)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:31:"_notification_setting_available";s:11:"description";s:60:"Find whether a particular kind of notification is available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether it is available";}}s:42:"_find_member_statistical_notification_type";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"to_member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:17:"Member to send to";s:11:"phpdoc_name";s:12:"to_member_id";}i:1;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The notification code to use";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:42:"_find_member_statistical_notification_type";s:11:"description";s:122:"Find what a member usually receives notifications on. Has some advanced searching support, and checks what is permissable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"Normal setting";}}s:32:"_dispatch_notification_to_member";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:12:"to_member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:17:"Member to send to";s:11:"phpdoc_name";s:12:"to_member_id";}i:1;a:5:{s:4:"name";s:7:"setting";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"Listening setting";s:11:"phpdoc_name";s:7:"setting";}i:2;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The notification code to use";s:11:"phpdoc_name";s:17:"notification_code";}i:3;a:5:{s:4:"name";s:13:"code_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:13:"code_category";}i:4;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Message subject (in Comcode)";s:11:"phpdoc_name";s:7:"subject";}i:5;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"Message body (in Comcode)";s:11:"phpdoc_name";s:7:"message";}i:6;a:5:{s:4:"name";s:14:"from_member_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:103:"The member ID doing the sending. Either a MEMBER or a negative number (e.g. A_FROM_SYSTEM_UNPRIVILEGED)";s:11:"phpdoc_name";s:14:"from_member_id";}i:7;a:6:{s:4:"name";s:8:"priority";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The message priority (1=urgent, 3=normal, 5=low)";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:8;a:5:{s:4:"name";s:5:"no_cc";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to NOT CC to the CC address";s:11:"phpdoc_name";s:5:"no_cc";}i:9;a:5:{s:4:"name";s:11:"attachments";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:81:"An list of attachments (each attachment being a map, path=>filename) (null: none)";s:11:"phpdoc_name";s:11:"attachments";}i:10;a:5:{s:4:"name";s:13:"use_real_from";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:174:"Whether we will make a "reply to" direct -- we only do this if we're allowed to disclose email addresses for this particular notification type (i.e. if it's a direct contact)";s:11:"phpdoc_name";s:13:"use_real_from";}}s:4:"name";s:32:"_dispatch_notification_to_member";s:11:"description";s:36:"Send out a notification to a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"New $no_cc setting";}}s:20:"enable_notifications";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The notification code to use";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:21:"notification_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:21:"notification_category";}i:2;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:49:"The member being signed up (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:7:"setting";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:30:"Setting to use (null: default)";s:11:"phpdoc_name";s:7:"setting";}i:4;a:7:{s:4:"name";s:19:"reset_for_all_types";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Reset all notification types, not just set for $setting";s:11:"phpdoc_name";s:19:"reset_for_all_types";}}s:4:"name";s:20:"enable_notifications";s:11:"description";s:66:"Enable notifications for a member on a notification type+category.";s:5:"flags";a:0:{}}s:21:"disable_notifications";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The notification code to use";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:21:"notification_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:21:"notification_category";}i:2;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:52:"The member being de-signed up (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:21:"disable_notifications";s:11:"description";s:206:"Disable notifications for a member on a notification type+category. Chances are you don't want to call this, you want to call enable_notifications with $setting = A_NA. That'll stop the default coming back.";s:5:"flags";a:0:{}}s:21:"notifications_enabled";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The notification code to check";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:21:"notification_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:21:"notification_category";}i:2;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:52:"The member being de-signed up (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:21:"notifications_enabled";s:11:"description";s:156:"Find whether notifications are enabled for a member on a notification type+category. Does not check security (must go through notification object for that).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:24:"notification_locked_down";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The notification code to check";s:11:"phpdoc_name";s:17:"notification_code";}}s:4:"name";s:24:"notification_locked_down";s:11:"description";s:64:"Find whether a notification is locked-down (i.e. cannot be set).";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:"notifications_setting";a:6:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The notification code to check";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:21:"notification_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:21:"notification_category";}i:2;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:52:"The member being de-signed up (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:21:"notifications_setting";s:11:"description";s:152:"Find how notifications are enabled for a member on a notification type+category. Does not check security (must go through notification object for that).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:12:"How they are";}}s:27:"delete_all_notifications_on";a:5:{s:8:"filename";s:25:"sources/notifications.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The notification code";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:21:"notification_category";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:54:"The category within the notification code (null: none)";s:11:"phpdoc_name";s:21:"notification_category";}}s:4:"name";s:27:"delete_all_notifications_on";s:11:"description";s:78:"Disable notifications for all members on a certain notification type+category.";s:5:"flags";a:0:{}}s:33:"_get_available_notification_types";a:6:{s:8:"filename";s:26:"sources/notifications2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:12:"member_id_of";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:46:"Member this is for (null: just check globally)";s:11:"phpdoc_name";s:12:"member_id_of";}}s:4:"name";s:33:"_get_available_notification_types";s:11:"description";s:56:"Get a map of notification types available to our member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:62:"Map of notification types (integer code to language string ID)";}}s:16:"notifications_ui";a:6:{s:8:"filename";s:26:"sources/notifications2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"member_id_of";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:18:"Member this is for";s:11:"phpdoc_name";s:12:"member_id_of";}}s:4:"name";s:16:"notifications_ui";s:11:"description";s:60:"Put out a user interface for managing notifications overall.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:2:"UI";}}s:25:"notifications_ui_advanced";a:6:{s:8:"filename";s:26:"sources/notifications2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"The notification code to work with";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:7:{s:4:"name";s:14:"enable_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:75:"Special message to output if we have toggled to enable (null: use standard)";s:11:"phpdoc_name";s:14:"enable_message";}i:2;a:7:{s:4:"name";s:15:"disable_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:76:"Special message to output if we have toggled to disable (null: use standard)";s:11:"phpdoc_name";s:15:"disable_message";}}s:4:"name";s:25:"notifications_ui_advanced";s:11:"description";s:150:"Put out a user interface for managing notifications for a notification-category supporting content type. Also toggle notifications if an ID is passed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:2:"UI";}}s:34:"_notifications_build_category_tree";a:6:{s:8:"filename";s:26:"sources/notifications2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:19:"_notification_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"Notification types";s:11:"phpdoc_name";s:19:"_notification_types";}i:1;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"The notification code to work with";s:11:"phpdoc_name";s:17:"notification_code";}i:2;a:5:{s:4:"name";s:2:"ob";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:25:"Notificiation hook object";s:11:"phpdoc_name";s:2:"ob";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:41:"Category we're looking under (null: root)";s:11:"phpdoc_name";s:2:"id";}i:4;a:5:{s:4:"name";s:5:"depth";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Recursion depth";s:11:"phpdoc_name";s:5:"depth";}i:5;a:5:{s:4:"name";s:24:"force_change_children_to";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:48:"Value to change setting to (null: do not change)";s:11:"phpdoc_name";s:24:"force_change_children_to";}i:6;a:5:{s:4:"name";s:15:"done_get_change";s:3:"ref";b:1;s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether we have made a change to the settings";s:11:"phpdoc_name";s:15:"done_get_change";}}s:4:"name";s:34:"_notifications_build_category_tree";s:11:"description";s:45:"Build a tree UI for all categories available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:2:"UI";}}s:31:"copy_notifications_to_new_child";a:5:{s:8:"filename";s:26:"sources/notifications2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:17:"notification_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"Parent category type";s:11:"phpdoc_name";s:17:"notification_code";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"Parent category ID";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:8:"child_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Child category ID";s:11:"phpdoc_name";s:8:"child_id";}}s:4:"name";s:31:"copy_notifications_to_new_child";s:11:"description";s:70:"Copy notification settings from a parent category to a child category.";s:5:"flags";a:0:{}}s:17:"mailto_obfuscated";a:6:{s:8:"filename";s:21:"sources/obfuscate.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"mailto_obfuscated";s:11:"description";s:117:"Get obfuscate version of 'mailto:' (which'll hopefully fool e-mail scavengers to not pick up these e-mail addresses).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The obfuscated 'mailto:' string";}}s:18:"obfuscate_entities";a:6:{s:8:"filename";s:21:"sources/obfuscate.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 text to obfuscate";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:18:"obfuscate_entities";s:11:"description";s:52:"Obfuscate the given text using HTML entity encoding.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"The obfuscated version";}}s:23:"obfuscate_email_address";a:6:{s:8:"filename";s:21:"sources/obfuscate.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"email";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"The e-mail address to obfuscate";s:11:"phpdoc_name";s:5:"email";}}s:4:"name";s:23:"obfuscate_email_address";s:11:"description";s:296:"Obfuscate the given e-mail address.This function may want to be modified on a per-site basis, to stop spammers triggering onto Composr's default method (possible some already do, although I think it unlikely they would go to this much effort/computation unless it was more widespread to do this).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"The obfuscated version";}}s:17:"get_function_hash";a:6:{s:8:"filename";s:24:"sources/override_api.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The code.";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Name of the function.";s:11:"phpdoc_name";s:8:"function";}}s:4:"name";s:17:"get_function_hash";s:11:"description";s:79:"Find the MD5 hash of the space-stripped copy of function within the given code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:39:"The MD5 hash (blank: no such function).";}}s:30:"insert_code_before__by_linenum";a:6:{s:8:"filename";s:24:"sources/override_api.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:9:"The code.";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Name of the function.";s:11:"phpdoc_name";s:8:"function";}i:2;a:5:{s:4:"name";s:7:"linenum";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:42:"Line number relative to start of function.";s:11:"phpdoc_name";s:7:"linenum";}i:3;a:5:{s:4:"name";s:7:"newcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Code to insert.";s:11:"phpdoc_name";s:7:"newcode";}}s:4:"name";s:30:"insert_code_before__by_linenum";s:11:"description";s:96:"Insert some code into a function in the given code snippet, by line number (before line number).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:29:"insert_code_after__by_linenum";a:6:{s:8:"filename";s:24:"sources/override_api.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:9:"The code.";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Name of the function.";s:11:"phpdoc_name";s:8:"function";}i:2;a:5:{s:4:"name";s:7:"linenum";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:42:"Line number relative to start of function.";s:11:"phpdoc_name";s:7:"linenum";}i:3;a:5:{s:4:"name";s:7:"newcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Code to insert.";s:11:"phpdoc_name";s:7:"newcode";}}s:4:"name";s:29:"insert_code_after__by_linenum";s:11:"description";s:95:"Insert some code into a function in the given code snippet, by line number (after line number).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:30:"insert_code_before__by_command";a:6:{s:8:"filename";s:24:"sources/override_api.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:9:"The code.";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Name of the function.";s:11:"phpdoc_name";s:8:"function";}i:2;a:5:{s:4:"name";s:7:"command";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:41:"The command we're searching to insert by.";s:11:"phpdoc_name";s:7:"command";}i:3;a:5:{s:4:"name";s:7:"newcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Code to insert.";s:11:"phpdoc_name";s:7:"newcode";}i:4;a:7:{s:4:"name";s:19:"instance_of_command";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:135:"We are inserting at this instance of the line (i.e. takes into account a literal line of code may exist in other places in a function).";s:11:"phpdoc_name";s:19:"instance_of_command";}}s:4:"name";s:30:"insert_code_before__by_command";s:11:"description";s:88:"Insert some code into a function in the given code snippet, by command (before command).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:29:"insert_code_after__by_command";a:6:{s:8:"filename";s:24:"sources/override_api.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:9:"The code.";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Name of the function.";s:11:"phpdoc_name";s:8:"function";}i:2;a:5:{s:4:"name";s:7:"command";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:41:"The command we're searching to insert by.";s:11:"phpdoc_name";s:7:"command";}i:3;a:5:{s:4:"name";s:7:"newcode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Code to insert.";s:11:"phpdoc_name";s:7:"newcode";}i:4;a:7:{s:4:"name";s:19:"instance_of_command";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:135:"We are inserting at this instance of the line (i.e. takes into account a literal line of code may exist in other places in a function).";s:11:"phpdoc_name";s:19:"instance_of_command";}}s:4:"name";s:29:"insert_code_after__by_command";s:11:"description";s:87:"Insert some code into a function in the given code snippet, by command (after command).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:11:"remove_code";a:6:{s:8:"filename";s:24:"sources/override_api.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:9:"The code.";s:11:"phpdoc_name";s:4:"code";}i:1;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Name of the function.";s:11:"phpdoc_name";s:8:"function";}i:2;a:5:{s:4:"name";s:7:"command";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:41:"The command we're searching to insert by.";s:11:"phpdoc_name";s:7:"command";}i:3;a:7:{s:4:"name";s:19:"instance_of_command";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:43:"We remove the nth instance of this command.";s:11:"phpdoc_name";s:19:"instance_of_command";}}s:4:"name";s:11:"remove_code";s:11:"description";s:59:"Remove some code from a function in the given code snippet.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:27:"bump_password_times_forward";a:5:{s:8:"filename";s:26:"sources/password_rules.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"bump_password_times_forward";s:11:"description";s:108:"API function for if password resets have just been turned on but you want some more time before it kicks in.";s:5:"flags";a:0:{}}s:23:"member_password_expired";a:6:{s:8:"filename";s:26:"sources/password_rules.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:22:"The member this is for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"member_password_expired";s:11:"description";s:58:"Find if a member's account has expired, due to inactivity.";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:"member_password_too_old";a:6:{s:8:"filename";s:26:"sources/password_rules.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:22:"The member this is for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"member_password_too_old";s:11:"description";s:39:"Find if a member's password is too old.";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:25:"check_password_complexity";a:6:{s:8:"filename";s:26:"sources/password_rules.php";s:10:"parameters";a:3:{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:24:"The username this is for";s:11:"phpdoc_name";s:8:"username";}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:"New password";s:11:"phpdoc_name";s:8:"password";}i:2;a:7:{s:4:"name";s:13:"return_errors";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to return errors instead of dieing on them.";s:11:"phpdoc_name";s:13:"return_errors";}}s:4:"name";s:25:"check_password_complexity";s:11:"description";s:35:"Check the complexity of a password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:19:"Error (null: none).";}}s:25:"bump_password_change_date";a:5:{s:8:"filename";s:26:"sources/password_rules.php";s:10:"parameters";a:6:{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:22:"The member this is for";s:11:"phpdoc_name";s:9:"member_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:"New password";s:11:"phpdoc_name";s:8:"password";}i:2;a:5:{s:4:"name";s:15:"password_salted";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Hashed password";s:11:"phpdoc_name";s:15:"password_salted";}i:3;a:5:{s:4:"name";s:4:"salt";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Password salt";s:11:"phpdoc_name";s:4:"salt";}i:4;a:7:{s:4:"name";s:11:"skip_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:34:"Whether to skip enforcement checks";s:11:"phpdoc_name";s:11:"skip_checks";}i:5;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:54:"The time this is logged to be happening at (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:25:"bump_password_change_date";s:11:"description";s:46:"Store (a hash of) and validate a new password.";s:5:"flags";a:0:{}}s:13:"test_password";a:6:{s:8:"filename";s:29:"sources/password_strength.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:21:"The password to check";s:11:"phpdoc_name";s:8:"password";}i:1;a:7:{s:4:"name";s:8:"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:43:"The username that will go with the password";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:13:"test_password";s:11:"description";s:23:"Test password strength.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:24:"Password strength (1-10)";}}s:17:"init__permissions";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__permissions";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:31:"clear_permissions_runtime_cache";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"clear_permissions_runtime_cache";s:11:"description";s:39:"Clear permissions API run-time caching.";s:5:"flags";a:0:{}}s:31:"handle_permission_check_logging";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:25:"The user checking against";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:2:"op";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The function that was called to check a permission";s:11:"phpdoc_name";s:2:"op";}i:2;a:5:{s:4:"name";s:6:"params";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:47:"Parameters to this permission-checking function";s:11:"phpdoc_name";s:6:"params";}i:3;a:5:{s:4:"name";s:6:"result";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether the permission was held";s:11:"phpdoc_name";s:6:"result";}}s:4:"name";s:31:"handle_permission_check_logging";s:11:"description";s:70:"Log permission checks to the permission_checks.log file, if it exists.";s:5:"flags";a:0:{}}s:13:"access_denied";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:5:"class";s:7:"default";s:13:"ACCESS_DENIED";s:11:"default_raw";s:15:"'ACCESS_DENIED'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:63:"The class of error (e.g. PRIVILEGE). This is a language string.";s:11:"phpdoc_name";s:5:"class";}i:1;a:7:{s:4:"name";s:5:"param";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:42:"The parameteter given to the error message";s:11:"phpdoc_name";s:5:"param";}i:2;a:7:{s:4:"name";s:11:"force_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:68:"Force the user to login (even if perhaps they are logged in already)";s:11:"phpdoc_name";s:11:"force_login";}}s:4:"name";s:13:"access_denied";s:11:"description";s:108:"Show a helpful access-denied page. Has a login ability if it senses that logging in could curtail the error.";s:5:"flags";a:0:{}}s:15:"has_zone_access";a:6:{s:8:"filename";s:23:"sources/permissions.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The ID code for the zone being checked";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:15:"has_zone_access";s:11:"description";s:47:"Find if a member has access to a specified zone";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether the member has zone access";}}s:22:"has_actual_page_access";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:5:{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:74:"The member being checked whether to have the access (null: current member)";s:11:"phpdoc_name";s:6:"member";}i:1;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:2;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:53:"The ID code for the zone being checked (null: search)";s:11:"phpdoc_name";s:4:"zone";}i:3;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}i:4;a:7:{s:4:"name";s:9:"privilege";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:101:"Either the ID code of a privilege, an array of alternatives that are acceptable (null: none required)";s:11:"phpdoc_name";s:9:"privilege";}}s:4:"name";s:22:"has_actual_page_access";s:11:"description";s:295:"Find if a member has access to a specified page. Zone permissions are taken into account for wherever the page is found at. Also support for category access and privileges. No support for entry-point checks, which are only carried out as an extension of page permissions when actually at a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the member has zone and page access";}}s:15:"has_page_access";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}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:38:"The ID code for the page being checked";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:38:"The ID code for the zone being checked";s:11:"phpdoc_name";s:4:"zone";}i:3;a:7:{s:4:"name";s:6:"at_now";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:92:"Whether we want to check we have access to the CURRENT page, using any match-key permissions";s:11:"phpdoc_name";s:6:"at_now";}}s:4:"name";s:15:"has_page_access";s:11:"description";s:186:"Find if a member has access to a specified page, in a specific zone. Note that page access does not imply zone access; you have access a page, but not the zone, so still couldn't see it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether the member has page access";}}s:39:"load_up_all_module_category_permissions";a:5:{s:8:"filename";s:23:"sources/permissions.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}i:1;a:7:{s:4:"name";s:6:"module";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:83:"The ID code for the module being checked for category access (null: all categories)";s:11:"phpdoc_name";s:6:"module";}}s:4:"name";s:39:"load_up_all_module_category_permissions";s:11:"description";s:62:"For efficiency reasons, load up loads of category permissions.";s:5:"flags";a:0:{}}s:19:"has_category_access";a:6:{s:8:"filename";s:23:"sources/permissions.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:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:60:"The ID code for the module being checked for category access";s:11:"phpdoc_name";s:6:"module";}i:2;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:88:"The ID code for the category being checked for access (often, a number cast to a string)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:19:"has_category_access";s:11:"description";s:51:"Find if a member has access to a specified category";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the member has category access";}}s:24:"_get_where_clause_groups";a:6:{s:8:"filename";s:23:"sources/permissions.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:40:"The member who's usergroups will be OR'd";s:11:"phpdoc_name";s:6:"member";}i:1;a:7:{s:4:"name";s:14:"consider_clubs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:207:"Whether to consider clubs (pass this false if considering page permissions, which work via explicit-denys across all groups, which could not happen for clubs as those denys could not have been set in the UI)";s:11:"phpdoc_name";s:14:"consider_clubs";}}s:4:"name";s:24:"_get_where_clause_groups";s:11:"description";s:126:"Get the SQL WHERE clause to select for any the given member is in (gets combined with some condition, to check against every).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:62:"The SQL query fragment (null: admin, so permission regardless)";}}s:25:"filter_group_permissivity";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:1:{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:24:"List of groups to filter";s:11:"phpdoc_name";s:6:"groups";}}s:4:"name";s:25:"filter_group_permissivity";s:11:"description";s:55:"Find which of a list of usergroups are permissive ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:52:"List of permissive groups, filtered from those given";}}s:23:"enforce_personal_access";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:4:{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:106:"The member who typically (i.e. when it's not an administrative override) we want the current member to be.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:10:"permission";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:81:"The override permission the current member must have (null: no general override).";s:11:"phpdoc_name";s:10:"permission";}i:2;a:7:{s:4:"name";s:11:"permission2";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:84:"An alternative permission to the 'assume_any_member' permission (null: no override).";s:11:"phpdoc_name";s:11:"permission2";}i:3;a:7:{s:4:"name";s:14:"member_viewing";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:59:"The member who is doing the viewing (null: current member).";s:11:"phpdoc_name";s:14:"member_viewing";}}s:4:"name";s:23:"enforce_personal_access";s:11:"description";s:137:"Only allow members here that are either the give member, admins, or have a privilege. All other members come up to an error message wall.";s:5:"flags";a:0:{}}s:15:"check_privilege";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"permission";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The permission to require";s:11:"phpdoc_name";s:10:"permission";}i:1;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}i:2;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:40:"Member to check for (null: current user)";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:9:"page_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:43:"Page name to check for (null: current page)";s:11:"phpdoc_name";s:9:"page_name";}}s:4:"name";s:15:"check_privilege";s:11:"description";s:72:"Require presence of a permission for the current member; otherwise exit.";s:5:"flags";a:0:{}}s:22:"has_some_cat_privilege";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:55:"The member being checked whether to have the permission";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:10:"permission";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The ID code for the permission being checked for";s:11:"phpdoc_name";s:10:"permission";}i:2;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:3;a:5:{s:4:"name";s:17:"permission_module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:55:"The ID code for the permission module being checked for";s:11:"phpdoc_name";s:17:"permission_module";}}s:4:"name";s:22:"has_some_cat_privilege";s:11:"description";s:59:"Find if a member has a specified permission in any category";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the member has the permission";}}s:13:"has_privilege";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:55:"The member being checked whether to have the permission";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:10:"permission";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The ID code for the permission being checked for";s:11:"phpdoc_name";s:10:"permission";}i:2;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:3;a:7:{s:4:"name";s:4:"cats";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:169:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...), or a string of the cat type if you will accept overrides in any matching cat (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}}s:4:"name";s:13:"has_privilege";s:11:"description";s:43:"Find if a member has a specified permission";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the member has the permission";}}s:23:"check_submit_permission";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:3:{i:0;a:6:{s:4:"name";s:5:"range";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:95:"The range of permission we are checking to see if they have; these ranges are like trust levels";s:11:"phpdoc_name";s:5:"range";s:3:"set";s:37:"low mid high cat_low cat_mid cat_high";}i:1;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}i:2;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:23:"check_submit_permission";s:11:"description";s:104:"Check to see if a member has permission to submit an item. If it doesn't, an error message is outputted.";s:5:"flags";a:0:{}}s:21:"has_submit_permission";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:5:{i:0;a:6:{s:4:"name";s:5:"range";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:95:"The range of permission we are checking to see if they have; these ranges are like trust levels";s:11:"phpdoc_name";s:5:"range";s:3:"set";s:37:"low mid high cat_low cat_mid cat_high";}i:1;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:51:"The member being checked whether to have the access";s:11:"phpdoc_name";s:6:"member";}i:2;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:23:"The member's IP address";s:11:"phpdoc_name";s:2:"ip";}i:3;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:4;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}}s:4:"name";s:21:"has_submit_permission";s:11:"description";s:41:"Find if a member has permission to submit";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the member can submit in this range";}}s:26:"check_some_edit_permission";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:3:{i:0;a:6:{s:4:"name";s:5:"range";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:95:"The range of permission we are checking to see if they have; these ranges are like trust levels";s:11:"phpdoc_name";s:5:"range";s:3:"set";s:37:"low mid high cat_low cat_mid cat_high";}i:1;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}i:2;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:26:"check_some_edit_permission";s:11:"description";s:102:"Check to see if a member has permission to edit an item. If it doesn't, an error message is outputted.";s:5:"flags";a:0:{}}s:21:"check_edit_permission";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:4:{i:0;a:6:{s:4:"name";s:5:"range";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:95:"The range of permission we are checking to see if they have; these ranges are like trust levels";s:11:"phpdoc_name";s:5:"range";s:3:"set";s:37:"low mid high cat_low cat_mid cat_high";}i:1;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The member that owns this resource (null: no-one)";s:11:"phpdoc_name";s:14:"resource_owner";}i:2;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}i:3;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:21:"check_edit_permission";s:11:"description";s:102:"Check to see if a member has permission to edit an item. If it doesn't, an error message is outputted.";s:5:"flags";a:0:{}}s:19:"has_edit_permission";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:5:{i:0;a:6:{s:4:"name";s:5:"range";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:95:"The range of permission we are checking to see if they have; these ranges are like trust levels";s:11:"phpdoc_name";s:5:"range";s:3:"set";s:37:"low mid high cat_low cat_mid cat_high";}i:1;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:35:"The member being checked for access";s:11:"phpdoc_name";s:6:"member";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The member that owns this resource (null: no-one)";s:11:"phpdoc_name";s:14:"resource_owner";}i:3;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:4;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}}s:4:"name";s:19:"has_edit_permission";s:11:"description";s:39:"Find if a member has permission to edit";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the member may edit the resource";}}s:23:"check_delete_permission";a:5:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:4:{i:0;a:6:{s:4:"name";s:5:"range";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:95:"The range of permission we are checking to see if they have; these ranges are like trust levels";s:11:"phpdoc_name";s:5:"range";s:3:"set";s:37:"low mid high cat_low cat_mid cat_high";}i:1;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The member that owns this resource (null: no-one)";s:11:"phpdoc_name";s:14:"resource_owner";}i:2;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}i:3;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:23:"check_delete_permission";s:11:"description";s:109:"Check if a member has permission to delete a specific resource. If it doesn't, an error message is outputted.";s:5:"flags";a:0:{}}s:21:"has_delete_permission";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:5:{i:0;a:6:{s:4:"name";s:5:"range";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:95:"The range of permission we are checking to see if they have; these ranges are like trust levels";s:11:"phpdoc_name";s:5:"range";s:3:"set";s:37:"low mid high cat_low cat_mid cat_high";}i:1;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:35:"The member being checked for access";s:11:"phpdoc_name";s:6:"member";}i:2;a:5:{s:4:"name";s:14:"resource_owner";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The member that owns this resource (null: no-one)";s:11:"phpdoc_name";s:14:"resource_owner";}i:3;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:4;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}}s:4:"name";s:21:"has_delete_permission";s:11:"description";s:69:"Check to see if a member has permission to delete a specific resource";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the member may delete the resource";}}s:31:"has_add_comcode_page_permission";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:2:{i:0;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:111:"The zone of Comcode pages we need it in (null: ANY zone, we are doing a vague check if the user could possibly)";s:11:"phpdoc_name";s:4:"zone";}i:1;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:"The member being checked for access (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:31:"has_add_comcode_page_permission";s:11:"description";s:61:"Check to see if a member has add permission for Comcode pages";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"If the permission is there";}}s:45:"has_bypass_validation_comcode_page_permission";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:2:{i:0;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:111:"The zone of Comcode pages we need it in (null: ANY zone, we are doing a vague check if the user could possibly)";s:11:"phpdoc_name";s:4:"zone";}i:1;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:"The member being checked for access (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:45:"has_bypass_validation_comcode_page_permission";s:11:"description";s:75:"Check to see if a member has bypass-validation permission for Comcode pages";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"If the permission is there";}}s:37:"has_some_edit_comcode_page_permission";a:6:{s:8:"filename";s:23:"sources/permissions.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"scope";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:101:"A bitmask of COMCODE_EDIT_* constants, identifying what kind of editing permission we are looking for";s:11:"phpdoc_name";s:5:"scope";}i:1;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:375:"Zone to check for (null: check against global privileges, ignoring all per-zone overrides). Note how this is different to how a null zone works for checking add/bypass-validation permissions because if we get a false we have the get_comcode_page_editability_per_zone function to get more specific details, while for adding we either want a very specific or very vague answer.";s:11:"phpdoc_name";s:4:"zone";}i:2;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:"The member being checked for access (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:37:"has_some_edit_comcode_page_permission";s:11:"description";s:62:"Check to see if a member has permission to edit a Comcode page";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"If the permission is there";}}s:37:"get_comcode_page_editability_per_zone";a:6:{s:8:"filename";s:23:"sources/permissions.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:"The member being checked for access (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:37:"get_comcode_page_editability_per_zone";s:11:"description";s:51:"Find what zones a member may edit Comcode pages in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:125:"A list of pairs: The zone name, and a bitmask of COMCODE_EDIT_* constants identifying the level of editing permission present";}}s:32:"has_edit_comcode_page_permission";a:6:{s:8:"filename";s:23:"sources/permissions.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:20:"The zone of 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:20:"The name of the page";s:11:"phpdoc_name";s:4:"page";}i:2;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:36:"Owner of the page (null: look it up)";s:11:"phpdoc_name";s:5:"owner";}i:3;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:"The member being checked for access (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:32:"has_edit_comcode_page_permission";s:11:"description";s:71:"Check to see if a member has permission to edit a specific Comcode page";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"If the permission is there";}}s:26:"set_global_category_access";a:5:{s:8:"filename";s:24:"sources/permissions2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The module";s:11:"phpdoc_name";s:6:"module";}i:1;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:32:"The category (integer or string)";s:11:"phpdoc_name";s:8:"category";}}s:4:"name";s:26:"set_global_category_access";s:11:"description";s:41:"Allow all usergroups to access a category";s:5:"flags";a:0:{}}s:32:"_handle_permission_check_logging";a:5:{s:8:"filename";s:24:"sources/permissions2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:25:"The user checking against";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:2:"op";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:50:"The function that was called to check a permission";s:11:"phpdoc_name";s:2:"op";}i:2;a:5:{s:4:"name";s:6:"params";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:47:"Parameters to this permission-checking function";s:11:"phpdoc_name";s:6:"params";}i:3;a:5:{s:4:"name";s:6:"result";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether the permission was held";s:11:"phpdoc_name";s:6:"result";}}s:4:"name";s:32:"_handle_permission_check_logging";s:11:"description";s:55:"Log permission checks to the permission_checks.log file";s:5:"flags";a:0:{}}s:19:"has_privilege_group";a:6:{s:8:"filename";s:24:"sources/permissions2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:48:"The being checked whether to have the permission";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:5:{s:4:"name";s:10:"permission";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:48:"The ID code for the permission being checked for";s:11:"phpdoc_name";s:10:"permission";}i:2;a:7:{s:4:"name";s:4:"page";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 ID code for the page being checked (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:3;a:7:{s:4:"name";s:4:"cats";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:91:"A list of cat details to require access to (c-type-1,c-id-1,c-type-2,c-d-2,...) (null: N/A)";s:11:"phpdoc_name";s:4:"cats";}}s:4:"name";s:19:"has_privilege_group";s:11:"description";s:42:"Find if a group has a specified permission";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the member has the permission";}}s:34:"get_category_permissions_hidden_on";a:6:{s:8:"filename";s:24:"sources/permissions2.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"get_category_permissions_hidden_on";s:11:"description";s:64:"Get hidden fields for setting category access permissions as on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"Hidden fields";}}s:40:"get_category_permissions_for_environment";a:6:{s:8:"filename";s:24:"sources/permissions2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:60:"The ID code for the module being checked for category access";s:11:"phpdoc_name";s:6:"module";}i:1;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:88:"The ID code for the category being checked for access (often, a number cast to a string)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:4:"page";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:41:"The page this is for (null: current page)";s:11:"phpdoc_name";s:4:"page";}i:3;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:4;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:5;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:40:"get_category_permissions_for_environment";s:11:"description";s:79:"Gather the permissions for the specified category as a form field input matrix.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The form field matrix";}}s:22:"get_permissions_matrix";a:6:{s:8:"filename";s:24:"sources/permissions2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"server_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:58:"Permission ID (page_link style) for the resource being set";s:11:"phpdoc_name";s:9:"server_id";}i:1;a:5:{s:4:"name";s:6:"access";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:93:"An inverted list showing what view permissions are set for what we're setting permissions for";s:11:"phpdoc_name";s:6:"access";}i:2;a:5:{s:4:"name";s:12:"overridables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:74:"List of overridable privilege codes for what we're setting permissions for";s:11:"phpdoc_name";s:12:"overridables";}i:3;a:5:{s:4:"name";s:10:"privileges";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:92:"List of privilege settings relating to what we're setting permissions for, from the database";s:11:"phpdoc_name";s:10:"privileges";}i:4;a:5:{s:4:"name";s:14:"default_access";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:88:"Multi-dimensional array showing what the inherited defaults for this permission would be";s:11:"phpdoc_name";s:14:"default_access";}i:5;a:7:{s:4:"name";s:8:"no_outer";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether to not include the stuff to make it fit alongside other form fields in a normal form table";s:11:"phpdoc_name";s:8:"no_outer";}i:6;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:22:"get_permissions_matrix";s:11:"description";s:56:"Create a form field input matrix for permission setting.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The form field matrix";}}s:41:"set_category_permissions_from_environment";a:5:{s:8:"filename";s:24:"sources/permissions2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:60:"The ID code for the module being checked for category access";s:11:"phpdoc_name";s:6:"module";}i:1;a:5:{s:4:"name";s:8:"category";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:88:"The ID code for the category being checked for access (often, a number cast to a string)";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:4:"page";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:41:"The page this is for (null: current page)";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:41:"set_category_permissions_from_environment";s:11:"description";s:112:"Assuming that permission details are POSTed, set the permissions for the specified category, in the current page";s:5:"flags";a:0:{}}s:36:"get_page_permissions_for_environment";a:6:{s:8:"filename";s:24:"sources/permissions2.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:24:"The ID code for the zone";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:24:"The ID code for the page";s:11:"phpdoc_name";s:4:"page";}i:2;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";}}s:4:"name";s:36:"get_page_permissions_for_environment";s:11:"description";s:67:"Gather the permissions for the specified page as form field inputs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The form fields";}}s:37:"set_page_permissions_from_environment";a:5:{s:8:"filename";s:24:"sources/permissions2.php";s:10:"parameters";a:2:{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:24:"The ID code for the zone";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:24:"The ID code for the page";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:37:"set_page_permissions_from_environment";s:11:"description";s:112:"Assuming that permission details are POSTed, set the permissions for the specified category, in the current page";s:5:"flags";a:0:{}}s:12:"init__points";a:5:{s:8:"filename";s:18:"sources/points.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__points";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:9:"get_price";a:6:{s:8:"filename";s:18:"sources/points.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"item";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The name of the item";s:11:"phpdoc_name";s:4:"item";}}s:4:"name";s:9:"get_price";s:11:"description";s:91:"Get the price of the specified item for sale in the Point Store (only for tableless items).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The price of the item";}}s:12:"total_points";a:6:{s:8:"filename";s:18:"sources/points.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:10:"The member";s:11:"phpdoc_name";s:6:"member";}i:1;a:7:{s:4:"name";s:9:"timestamp";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:27:"Time to get for (null: now)";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:12:"total_points";s:11:"description";s:107:"Get the total points in the specified member's account; some of these will probably have been spent already";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:35:"The number of points the member has";}}s:11:"points_used";a:6:{s:8:"filename";s:18:"sources/points.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:10:"The member";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:11:"points_used";s:11:"description";s:59:"Get the total points the specified member has used (spent).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:41:"The number of points the member has spent";}}s:16:"available_points";a:6:{s:8:"filename";s:18:"sources/points.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:10:"The member";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:16:"available_points";s:11:"description";s:45:"Get the total points the specified member has";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:35:"The number of points the member has";}}s:10:"point_info";a:6:{s:8:"filename";s:18:"sources/points.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:31:"The member the point info is of";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:10:"point_info";s:11:"description";s:70:"Get all sorts of information about a specified member's point account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:79:"The map containing the members point info (fields as enumerated in description)";}}s:20:"get_gift_points_used";a:6:{s:8:"filename";s:18:"sources/points.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:25:"The member we want it for";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_gift_points_used";s:11:"description";s:55:"Get the number of gift points used by the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:44:"The number of gift points used by the member";}}s:23:"get_gift_points_to_give";a:6:{s:8:"filename";s:18:"sources/points.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:25:"The member we want it for";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:23:"get_gift_points_to_give";s:11:"description";s:65:"Get the number of gifts points to give that the given member has.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:60:"The number of gifts points to give that the given member has";}}s:13:"init__points2";a:5:{s:8:"filename";s:19:"sources/points2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__points2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:20:"system_gift_transfer";a:5:{s:8:"filename";s:19:"sources/points2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:27:"The reason for the transfer";s:11:"phpdoc_name";s:6:"reason";}i:1;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The size of the transfer";s:11:"phpdoc_name";s:6:"amount";}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:29:"The member the transfer is to";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:7:{s:4:"name";s:14:"include_in_log";s:7:"default";s:12:"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 include a log line";s:11:"phpdoc_name";s:14:"include_in_log";}}s:4:"name";s:20:"system_gift_transfer";s:11:"description";s:81:"Transfer gift-points into the specified member's account, courtesy of the system.";s:5:"flags";a:0:{}}s:11:"give_points";a:5:{s:8:"filename";s:19:"sources/points2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"The amount being given";s:11:"phpdoc_name";s:6:"amount";}i:1;a:5:{s:4:"name";s:12:"recipient_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:31:"The member receiving the points";s:11:"phpdoc_name";s:12:"recipient_id";}i:2;a:5:{s:4:"name";s:9:"sender_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:29:"The member sending the points";s:11:"phpdoc_name";s:9:"sender_id";}i:3;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The reason for the gift";s:11:"phpdoc_name";s:6:"reason";}i:4;a:7:{s:4:"name";s:9:"anonymous";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Does the sender want to remain anonymous?";s:11:"phpdoc_name";s:9:"anonymous";}i:5;a:7:{s:4:"name";s:10:"send_email";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to send out an email about it";s:11:"phpdoc_name";s:10:"send_email";}}s:4:"name";s:11:"give_points";s:11:"description";s:47:"Give a member some points, from another member.";s:5:"flags";a:0:{}}s:13:"charge_member";a:5:{s:8:"filename";s:19:"sources/points2.php";s:10:"parameters";a:3:{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:32:"The member that is being charged";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The amount being charged";s:11:"phpdoc_name";s:6:"amount";}i:2;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:27:"The reason for the charging";s:11:"phpdoc_name";s:6:"reason";}}s:4:"name";s:13:"charge_member";s:11:"description";s:48:"Charge points from a specified member's account.";s:5:"flags";a:0:{}}s:17:"add_to_charge_log";a:5:{s:8:"filename";s:19:"sources/points2.php";s:10:"parameters";a:4:{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:32:"The member that is being charged";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:6:"amount";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The amount being charged";s:11:"phpdoc_name";s:6:"amount";}i:2;a:5:{s:4:"name";s:6:"reason";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:27:"The reason for the charging";s:11:"phpdoc_name";s:6:"reason";}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:67:"The time this is recorded to have happened (null: use current time)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:17:"add_to_charge_log";s:11:"description";s:31:"Add an entry to the change log.";s:5:"flags";a:0:{}}s:30:"reverse_point_gift_transaction";a:5:{s:8:"filename";s:19:"sources/points2.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:18:"The transaction ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:30:"reverse_point_gift_transaction";s:11:"description";s:44:"Reverse a particular gift point transaction.";s:5:"flags";a:0:{}}s:14:"points_profile";a:6:{s:8:"filename";s:19:"sources/points3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"member_id_of";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:12:"member_id_of";}i:1;a:5:{s:4:"name";s:17:"member_id_viewing";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:68:"The ID of the member who is doing the viewing (null: current member)";s:11:"phpdoc_name";s:17:"member_id_viewing";}}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:23:"points_get_transactions";a:6:{s:8:"filename";s:19:"sources/points3.php";s:10:"parameters";a:3:{i:0;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The type of transactions we are looking for";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:7:"from to";}i:1;a:5:{s:4:"name";s:12:"member_id_of";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:38:"Who we are looking at transactions for";s:11:"phpdoc_name";s:12:"member_id_of";}i:2;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:55:"Who we are looking at transactions using the account of";s:11:"phpdoc_name";s:17:"member_id_viewing";}}s:4:"name";s:23:"points_get_transactions";s:11:"description";s:45:"Show the point transactions a member has had.";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:"pointstore_handle_error_taken";a:5:{s:8:"filename";s:22:"sources/pointstore.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The prefix (mailbox name)";s:11:"phpdoc_name";s:6:"prefix";}i:1;a:5:{s:4:"name";s:6:"suffix";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The suffix (domain name)";s:11:"phpdoc_name";s:6:"suffix";}}s:4:"name";s:29:"pointstore_handle_error_taken";s:11:"description";s:103:"Check to see if the specified e-mail address has already been purchased. If so, spawn an error message.";s:5:"flags";a:0:{}}s:16:"get_mail_domains";a:6:{s:8:"filename";s:22:"sources/pointstore.php";s:10:"parameters";a:2:{i:0;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The type of mail domain";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:9:"pop3 forw";}i:1;a:5:{s:4:"name";s:11:"points_left";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Description";s:11:"phpdoc_name";s:11:"points_left";}}s:4:"name";s:16:"get_mail_domains";s:11:"description";s:50:"Get a Tempcode list of the available mail domains.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The Tempcode list of available domains";}}s:35:"pointstore_handle_error_already_has";a:5:{s:8:"filename";s:22:"sources/pointstore.php";s:10:"parameters";a:1:{i:0;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The type of mail domain";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:9:"pop3 forw";}}s:4:"name";s:35:"pointstore_handle_error_already_has";s:11:"description";s:131:"Check to see if the member already has an account of this type. If so, an error message is shown, as you can only own of each type.";s:5:"flags";a:0:{}}s:15:"render_poll_box";a:6:{s:8:"filename";s:17:"sources/polls.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether to show results (if we've already voted, this'll be overridden)";s:11:"phpdoc_name";s:7:"results";}i:1;a:5:{s:4:"name";s:5:"myrow";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"The poll row";s:11:"phpdoc_name";s:5:"myrow";}i:2;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The zone our poll module is in";s:11:"phpdoc_name";s:4:"zone";}i:3;a:7:{s:4:"name";s:20:"include_manage_links";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:80:"Whether to include extra management links (e.g. editing, choosing, archive, etc)";s:11:"phpdoc_name";s:20:"include_manage_links";}i:4;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:15:"render_poll_box";s:11:"description";s:24:"Show an actual poll box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The box";}}s:12:"vote_in_poll";a:6:{s:8:"filename";s:17:"sources/polls.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The poll ID";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:5:{s:4:"name";s:4:"cast";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:33:"Vote to cast (null: forfeit vote)";s:11:"phpdoc_name";s:4:"cast";}i:2;a:7:{s:4:"name";s:5:"myrow";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:31:"Poll row (null: lookup from DB)";s:11:"phpdoc_name";s:5:"myrow";}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:32:"Who to vote (null: current user)";s:11:"phpdoc_name";s:9:"member_id";}i:4;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:34:"The IP to vote (null: no IP check)";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"vote_in_poll";s:11:"description";s:15:"Vote in a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"Amended poll row";}}s:16:"may_vote_in_poll";a:6:{s:8:"filename";s:17:"sources/polls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"poll_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The poll ID";s:11:"phpdoc_name";s:7:"poll_id";}i:1;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:16:"Who to check for";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:39:"The IP to check for (null: no IP check)";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:16:"may_vote_in_poll";s:11:"description";s:41:"Find whether the current member may vote.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the current member may vote";}}s:27:"create_selection_list_polls";a:6:{s:8:"filename";s:17:"sources/polls.php";s:10:"parameters";a:2:{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:10:"?AUTO_LINK";s:11:"description";s:53:"The ID of the poll to select by default (null: first)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:10:"only_owned";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:64:"Only show polls owned by this member (null: no such restriction)";s:11:"phpdoc_name";s:10:"only_owned";}}s:4:"name";s:27:"create_selection_list_polls";s:11:"description";s:20:"Get a list of polls.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:8:"add_poll";a:6:{s:8:"filename";s:18:"sources/polls2.php";s:10:"parameters";a:32:{i:0;a:5:{s:4:"name";s:8:"question";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:1;a:6:{s:4:"name";s:2:"a1";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The first choice";s:11:"phpdoc_name";s:2:"a1";s:5:"range";s:5:"1 max";}i:2;a:6:{s:4:"name";s:2:"a2";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The second choice";s:11:"phpdoc_name";s:2:"a2";s:5:"range";s:5:"1 max";}i:3;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:43:"The third choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a3";}i:4;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:44:"The fourth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a4";}i:5;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:43:"The fifth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a5";}i:6;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:43:"The sixth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a6";}i:7;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:45:"The seventh choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a7";}i:8;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:44:"The eighth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a8";}i:9;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:43:"The ninth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a9";}i:10;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:43:"The tenth choice (blank means not a choice)";s:11:"phpdoc_name";s:3:"a10";}i:11;a:8:{s:4:"name";s:11:"num_options";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:39:"The number of choices (null: calculate)";s:11:"phpdoc_name";s:11:"num_options";s:5:"range";s:3:"2 5";}i:12;a:7:{s:4:"name";s:7:"current";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:36:"Whether the poll is the current poll";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:6:"BINARY";s:11:"description";s:36:"Whether to allow rating of this poll";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:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";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:6:"BINARY";s:11:"description";s:42:"Whether to allow trackbacking on this poll";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:21:"Notes about this poll";s:11:"phpdoc_name";s:5:"notes";}i:17;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:43:"The time the poll was submitted (null: now)";s:11:"phpdoc_name";s:4:"time";}i:18;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:51:"The member who submitted (null: the current member)";s:11:"phpdoc_name";s:9:"submitter";}i:19;a:7:{s:4:"name";s:8:"use_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:59:"The time the poll was put to use (null: not put to use yet)";s:11:"phpdoc_name";s:8:"use_time";}i:20;a:8:{s:4:"name";s:2:"v1";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:32:"How many have voted for option 1";s:11:"phpdoc_name";s:2:"v1";s:5:"range";s:5:"0 max";}i:21;a:8:{s:4:"name";s:2:"v2";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:32:"How many have voted for option 2";s:11:"phpdoc_name";s:2:"v2";s:5:"range";s:5:"0 max";}i:22;a:8:{s:4:"name";s:2:"v3";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:32:"How many have voted for option 3";s:11:"phpdoc_name";s:2:"v3";s:5:"range";s:5:"0 max";}i:23;a:8:{s:4:"name";s:2:"v4";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:32:"How many have voted for option 4";s:11:"phpdoc_name";s:2:"v4";s:5:"range";s:5:"0 max";}i:24;a:8:{s:4:"name";s:2:"v5";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:32:"How many have voted for option 5";s:11:"phpdoc_name";s:2:"v5";s:5:"range";s:5:"0 max";}i:25;a:8:{s:4:"name";s:2:"v6";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:32:"How many have voted for option 6";s:11:"phpdoc_name";s:2:"v6";s:5:"range";s:5:"0 max";}i:26;a:8:{s:4:"name";s:2:"v7";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:32:"How many have voted for option 7";s:11:"phpdoc_name";s:2:"v7";s:5:"range";s:5:"0 max";}i:27;a:8:{s:4:"name";s:2:"v8";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:32:"How many have voted for option 8";s:11:"phpdoc_name";s:2:"v8";s:5:"range";s:5:"0 max";}i:28;a:8:{s:4:"name";s:2:"v9";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:32:"How many have voted for option 9";s:11:"phpdoc_name";s:2:"v9";s:5:"range";s:5:"0 max";}i:29;a:8:{s:4:"name";s:3:"v10";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:33:"How many have voted for option 10";s:11:"phpdoc_name";s:3:"v10";s:5:"range";s:5:"0 max";}i:30;a:7:{s:4:"name";s:5:"views";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:23:"The number of views had";s:11:"phpdoc_name";s:5:"views";}i:31;a:7:{s:4:"name";s:9:"edit_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:27:"The edit date (null: never)";s:11:"phpdoc_name";s:9:"edit_date";}}s:4:"name";s:8:"add_poll";s:11:"description";s:68:"Add a new poll to the database, then return the ID of the new entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:27:"The poll ID of our new poll";}}s:9:"edit_poll";a:5:{s:8:"filename";s:18:"sources/polls2.php";s:10:"parameters";a:22:{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:26:"The ID of the poll to edit";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:8:"question";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:6:{s:4:"name";s:2:"a1";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The first choice";s:11:"phpdoc_name";s:2:"a1";s:5:"range";s:5:"1 max";}i:3;a:6:{s:4:"name";s:2:"a2";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The second choice";s:11:"phpdoc_name";s:2:"a2";s:5:"range";s:5:"1 max";}i:4;a:5:{s:4:"name";s:2:"a3";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:43:"The third choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a3";}i:5;a:5:{s:4:"name";s:2:"a4";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:44:"The fourth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a4";}i:6;a:5:{s:4:"name";s:2:"a5";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:43:"The fifth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a5";}i:7;a:5:{s:4:"name";s:2:"a6";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:43:"The sixth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a6";}i:8;a:5:{s:4:"name";s:2:"a7";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:45:"The seventh choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a7";}i:9;a:5:{s:4:"name";s:2:"a8";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:44:"The eighth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a8";}i:10;a:5:{s:4:"name";s:2:"a9";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:43:"The ninth choice (blank means not a choice)";s:11:"phpdoc_name";s:2:"a9";}i:11;a:5:{s:4:"name";s:3:"a10";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:43:"The tenth choice (blank means not a choice)";s:11:"phpdoc_name";s:3:"a10";}i:12;a:5:{s:4:"name";s:11:"num_options";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of choices";s:11:"phpdoc_name";s:11:"num_options";}i:13;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether to allow rating of this poll";s:11:"phpdoc_name";s:12:"allow_rating";}i:14;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:58:"Whether comments are allowed (0=no, 1=yes, 2=review style)";s:11:"phpdoc_name";s:14:"allow_comments";}i:15;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:42:"Whether to allow trackbacking on this poll";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:16;a:5:{s:4:"name";s:5:"notes";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:21:"Notes about this poll";s:11:"phpdoc_name";s:5:"notes";}i:17;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:18;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:19;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:20;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:21;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:9:"edit_poll";s:11:"description";s:12:"Edit a poll.";s:5:"flags";a:0:{}}s:11:"delete_poll";a:5:{s:8:"filename";s:18:"sources/polls2.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:28:"The ID of the poll to delete";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:11:"delete_poll";s:11:"description";s:14:"Delete a poll.";s:5:"flags";a:0:{}}s:8:"set_poll";a:5:{s:8:"filename";s:18:"sources/polls2.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:18:"The poll ID to set";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:8:"set_poll";s:11:"description";s:13:"Set the poll.";s:5:"flags";a:0:{}}s:13:"build_preview";a:6:{s:8:"filename";s:19:"sources/preview.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:12:"multi_return";s:7:"default";s:13:"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 return additional data";s:11:"phpdoc_name";s:12:"multi_return";}}s:4:"name";s:13:"build_preview";s:11:"description";s:47:"Build up a preview based on what was submitted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:54:"Either Tempcode for the preview, or a tuple of details";}}s:14:"init__profiler";a:5:{s:8:"filename";s:20:"sources/profiler.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__profiler";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"cms_profile_is_enabled";a:6:{s:8:"filename";s:20:"sources/profiler.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"cms_profile_is_enabled";s:11:"description";s:126:"Find whether profiling is enabled. This may be false due to Composr still starting up, in which case it will be enabled later.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether profiling is enabled.";}}s:22:"_cms_profile_start_for";a:5:{s:8:"filename";s:20:"sources/profiler.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Identifier";s:11:"phpdoc_name";s:10:"identifier";}}s:4:"name";s:22:"_cms_profile_start_for";s:11:"description";s:75:"Start a profiling block, for a specified identifier (of your own choosing).";s:5:"flags";a:0:{}}s:20:"_cms_profile_end_for";a:5:{s:8:"filename";s:20:"sources/profiler.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Identifier";s:11:"phpdoc_name";s:10:"identifier";}i:1;a:7:{s:4:"name";s:9:"specifics";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:90:"Longer details of what happened (e.g. a specific SQL query that ran) (null: none provided)";s:11:"phpdoc_name";s:9:"specifics";}}s:4:"name";s:20:"_cms_profile_end_for";s:11:"description";s:131:"End a profiling block, for a specified identifier (of your own choosing - but you must have started it with cms_profile_start_for).";s:5:"flags";a:0:{}}s:26:"_cms_profile_generate_line";a:6:{s:8:"filename";s:20:"sources/profiler.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Identifier";s:11:"phpdoc_name";s:10:"identifier";}i:1;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"The signature for what we just profiled";s:11:"phpdoc_name";s:2:"at";}i:2;a:5:{s:4:"name";s:3:"cnt";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:52:"This will be the nth of this identifier to be logged";s:11:"phpdoc_name";s:3:"cnt";}}s:4:"name";s:26:"_cms_profile_generate_line";s:11:"description";s:71:"Generate a line to add to the profiling log, from a recorded signature.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"Log line";}}s:21:"_cms_profile_log_line";a:5:{s:8:"filename";s:20:"sources/profiler.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"line";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Log line";s:11:"phpdoc_name";s:4:"line";}}s:4:"name";s:21:"_cms_profile_log_line";s:11:"description";s:34:"Store a line in the profiling log.";s:5:"flags";a:0:{}}s:24:"_cms_profiler_script_end";a:5:{s:8:"filename";s:20:"sources/profiler.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_cms_profiler_script_end";s:11:"description";s:62:"Finish the profiler (automatically run at script termination).";s:5:"flags";a:0:{}}s:29:"_cms_profiler_generic_logging";a:5:{s:8:"filename";s:20:"sources/profiler.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"_cms_profiler_generic_logging";s:11:"description";s:98:"Add in generic logging lines to the profiling log (background/context information). Assumes Linux.";s:5:"flags";a:0:{}}s:15:"render_quiz_box";a:6:{s:8:"filename";s:16:"sources/quiz.php";s:10:"parameters";a:4:{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:16:"The database row";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The zone to show in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:15:"render_quiz_box";s:11:"description";s:16:"Show a quiz box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The rendered quiz link";}}s:21:"get_quiz_data_for_csv";a:6:{s:8:"filename";s:16:"sources/quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"quiz_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:7:"Quiz ID";s:11:"phpdoc_name";s:7:"quiz_id";}}s:4:"name";s:21:"get_quiz_data_for_csv";s:11:"description";s:40:"Get quiz data for exporting it as a CSV.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"Quiz data array";}}s:11:"render_quiz";a:6:{s:8:"filename";s:16:"sources/quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"questions";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"The quiz questions";s:11:"phpdoc_name";s:9:"questions";}}s:4:"name";s:11:"render_quiz";s:11:"description";s:38:"Get quiz data for exporting it as CSV.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The rendered quiz";}}s:10:"score_quiz";a:6:{s:8:"filename";s:16:"sources/quiz.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"entry_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"Entry ID";s:11:"phpdoc_name";s:8:"entry_id";}i:1;a:7:{s:4:"name";s:7:"quiz_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:37:"Quiz ID (null: look up from entry ID)";s:11:"phpdoc_name";s:7:"quiz_id";}i:2;a:7:{s:4:"name";s:4:"quiz";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:38:"Quiz row (null: look up from entry ID)";s:11:"phpdoc_name";s:4:"quiz";}i:3;a:7:{s:4:"name";s:9:"questions";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:"Question rows (null: look up from entry ID)";s:11:"phpdoc_name";s:9:"questions";}i:4;a:7:{s:4:"name";s:10:"reveal_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:71:"Whether to show answers, regardless of whether the quiz is set to do so";s:11:"phpdoc_name";s:10:"reveal_all";}}s:4:"name";s:10:"score_quiz";s:11:"description";s:30:"Score a particular quiz entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"A tuple of quiz result details";}}s:23:"typed_answer_is_correct";a:6:{s:8:"filename";s:16:"sources/quiz.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"given_answer";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The given (typed) answer";s:11:"phpdoc_name";s:12:"given_answer";}i:1;a:5:{s:4:"name";s:11:"all_answers";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"Answer rows";s:11:"phpdoc_name";s:11:"all_answers";}i:2;a:7:{s:4:"name";s:6:"strict";s:7:"default";s:13:"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 do a strict check";s:11:"phpdoc_name";s:6:"strict";}}s:4:"name";s:23:"typed_answer_is_correct";s:11:"description";s:31:"Is a typed quiz answer correct?";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:21:"Whether it is correct";}}s:29:"load_quiz_questions_to_string";a:6:{s:8:"filename";s:17:"sources/quiz2.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:11:"The quiz ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:29:"load_quiz_questions_to_string";s:11:"description";s:51:"Load the questions for a quiz into a single string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The text string";}}s:24:"parse_quiz_question_line";a:6:{s:8:"filename";s:17:"sources/quiz2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"question";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The quiz question line";s:11:"phpdoc_name";s:8:"question";}i:1;a:5:{s:4:"name";s:7:"answers";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"List of possible answers (used for validation purposes)";s:11:"phpdoc_name";s:7:"answers";}i:2;a:7:{s:4:"name";s:19:"question_extra_text";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:29:"The quiz question description";s:11:"phpdoc_name";s:19:"question_extra_text";}i:3;a:7:{s:4:"name";s:13:"do_validation";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether to perform validation / corrections";s:11:"phpdoc_name";s:13:"do_validation";}}s:4:"name";s:24:"parse_quiz_question_line";s:11:"description";s:57:"Parse a quiz question line, to find the question options.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:87:"A tuple: Question, question type, required?, marked?, question extra text (description)";}}s:28:"_save_available_quiz_answers";a:5:{s:8:"filename";s:17:"sources/quiz2.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:11:"The quiz ID";s:11:"phpdoc_name";s:2:"id";}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:18:"Text for questions";s:11:"phpdoc_name";s:4:"text";}i:2;a:6:{s:4:"name";s:4:"type";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:"COMPETITION TEST SURVEY";}}s:4:"name";s:28:"_save_available_quiz_answers";s:11:"description";s:27:"Add the answers for a quiz.";s:5:"flags";a:0:{}}s:8:"add_quiz";a:6:{s:8:"filename";s:17:"sources/quiz2.php";s:10:"parameters";a:23:{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:20:"The name of the quiz";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:7:"timeout";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:2;a:5:{s:4:"name";s:10:"start_text";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:3;a:5:{s:4:"name";s:8:"end_text";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:4;a:5:{s:4:"name";s:13:"end_text_fail";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:5;a:5:{s:4:"name";s:5:"notes";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:6;a:5:{s:4:"name";s:10:"percentage";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:7;a:5:{s:4:"name";s:9:"open_time";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:8;a:5:{s:4:"name";s:10:"close_time";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:9;a:5:{s:4:"name";s:11:"num_winners";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:10;a:5:{s:4:"name";s:9:"redo_time";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:44:"The minimum number of hours between attempts";s:11:"phpdoc_name";s:9:"redo_time";}i:11;a:6:{s:4:"name";s:4:"type";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:12;a:5:{s:4:"name";s:9:"validated";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:13;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Text for questions";s:11:"phpdoc_name";s:4:"text";}i:14;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:43:"The member adding it (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}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";}i:20;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:21;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:22;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:8:"add_quiz";s:11:"description";s:11:"Add a quiz.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:6:"The ID";}}s:9:"edit_quiz";a:5:{s:8:"filename";s:17:"sources/quiz2.php";s:10:"parameters";a:25:{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:6:"The 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:10:"SHORT_TEXT";s:11:"description";s:20:"The name of the quiz";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:7:"timeout";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:5:{s:4:"name";s:10:"start_text";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:5:{s:4:"name";s:8:"end_text";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:5:{s:4:"name";s:13:"end_text_fail";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:5:{s:4:"name";s:5:"notes";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:5:{s:4:"name";s:10:"percentage";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:5:{s:4:"name";s:9:"open_time";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:5:{s:4:"name";s:10:"close_time";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:5:{s:4:"name";s:11:"num_winners";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:5:{s:4:"name";s:9:"redo_time";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:44:"The minimum number of hours between attempts";s:11:"phpdoc_name";s:9:"redo_time";}i:12;a:6:{s:4:"name";s:4:"type";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:5:{s:4:"name";s:9:"validated";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:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Text for questions";s:11:"phpdoc_name";s:4:"text";}i:15;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:16;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:17;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:18;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:19;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:20;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:21;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";}i:22;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:23;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:31:"Submitter (null: do not change)";s:11:"phpdoc_name";s:9:"submitter";}i:24;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:9:"edit_quiz";s:11:"description";s:12:"Edit a quiz.";s:5:"flags";a:0:{}}s:11:"delete_quiz";a:5:{s:8:"filename";s:17:"sources/quiz2.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:6:"The ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:11:"delete_quiz";s:11:"description";s:14:"Delete a quiz.";s:5:"flags";a:0:{}}s:20:"realtime_rain_script";a:5:{s:8:"filename";s:25:"sources/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"realtime_rain_script";s:11:"description";s:45:"AJAX script for returning realtime-rain data.";s:5:"flags";a:0:{}}s:19:"get_realtime_events";a:6:{s:8:"filename";s:25:"sources/realtime_rain.php";s:10:"parameters";a:2:{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:22:"From time (inclusive).";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:20:"To time (inclusive).";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:19:"get_realtime_events";s:11:"description";s:44:"Get all the events within a timestamp range.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:69:"List of template parameter sets (perfect for use in a Tempcode LOOP).";}}s:23:"rain_truncate_for_title";a:6:{s:8:"filename";s:25:"sources/realtime_rain.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Idealised title.";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:23:"rain_truncate_for_title";s:11:"description";s:64:"Make a realtime event bubble's title fit in the available space.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:43:"Cropped title, with tooltip for full title.";}}s:22:"rain_get_country_image";a:6:{s:8:"filename";s:25:"sources/realtime_rain.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"ip_address";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"An IP address.";s:11:"phpdoc_name";s:10:"ip_address";}}s:4:"name";s:22:"rain_get_country_image";s:11:"description";s:43:"Get a country flag image for an IP address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:47:"Country flag image (blank: could not find one).";}}s:22:"rain_get_special_icons";a:6:{s:8:"filename";s:25:"sources/realtime_rain.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"ip_address";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:57:"An IP address (used to check against bots) (null: no IP).";s:11:"phpdoc_name";s:10:"ip_address";}i:1;a:5:{s:4:"name";s:9:"timestamp";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:51:"A timestamp (used to check for logged sent emails).";s:11:"phpdoc_name";s:9:"timestamp";}i:2;a:7:{s:4:"name";s:10:"user_agent";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:66:"A user agent (used to check against phones) (null: no user agent).";s:11:"phpdoc_name";s:10:"user_agent";}i:3;a:7:{s:4:"name";s:4:"news";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:"News ticker news (null: no news ticker news).";s:11:"phpdoc_name";s:4:"news";}}s:4:"name";s:22:"rain_get_special_icons";s:11:"description";s:73:"Returns a map with an icon and multiplicity parameter (that may be null).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:44:"Map with an icon and multiplicity parameter.";}}s:25:"send_recommendation_email";a:5:{s:8:"filename";s:21:"sources/recommend.php";s:10:"parameters";a:7:{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:17:"Recommenders name";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:13:"email_address";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:52:"Their e-mail address (string or array of alternates)";s:11:"phpdoc_name";s:13:"email_address";}i:2;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The recommendation message";s:11:"phpdoc_name";s:7:"message";}i:3;a:7:{s:4:"name";s:9:"is_invite";s:7:"default";s:13:"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:"Whether this is an invitation";s:11:"phpdoc_name";s:9:"is_invite";}i:4;a:7:{s:4:"name";s:17:"recommender_email";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:55:"Email address of the recommender (null: current user's)";s:11:"phpdoc_name";s:17:"recommender_email";}i:5;a:7:{s:4:"name";s:7:"subject";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:27:"The subject (null: default)";s:11:"phpdoc_name";s:7:"subject";}i:6;a:7:{s:4:"name";s:5:"names";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:"List of names (null: use email addresses as names)";s:11:"phpdoc_name";s:5:"names";}}s:4:"name";s:25:"send_recommendation_email";s:11:"description";s:34:"Sends out a recommendation e-mail.";s:5:"flags";a:0:{}}s:15:"get_num_invites";a:6:{s:8:"filename";s:21:"sources/recommend.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:18:"Member to look for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:15:"get_num_invites";s:11:"description";s:43:"Get number of invites available for member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"Number of invites";}}s:15:"may_use_invites";a:6:{s:8:"filename";s:21:"sources/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"may_use_invites";s:11:"description";s:43:"Whether the current member may use invites.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they may";}}s:17:"init__resource_fs";a:5:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__resource_fs";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:26:"resource_fs_logging__start";a:5:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:1:{i:0;a:8:{s:4:"name";s:5:"level";s:7:"default";s:6:"notice";s:11:"default_raw";s:8:"'notice'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The minimum logging level";s:11:"phpdoc_name";s:5:"level";s:3:"set";s:18:"inform notice warn";}}s:4:"name";s:26:"resource_fs_logging__start";s:11:"description";s:15:"Engage logging.";s:5:"flags";a:0:{}}s:19:"resource_fs_logging";a:5:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The message";s:11:"phpdoc_name";s:7:"message";}i:1;a:8:{s:4:"name";s:4:"type";s:7:"default";s:4:"warn";s:11:"default_raw";s:6:"'warn'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"The template to use";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:18:"inform notice warn";}}s:4:"name";s:19:"resource_fs_logging";s:11:"description";s:14:"Log a message.";s:5:"flags";a:0:{}}s:24:"resource_fs_logging__end";a:5:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"resource_fs_logging__end";s:11:"description";s:18:"Disengage logging.";s:5:"flags";a:0:{}}s:22:"get_resource_fs_record";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:22:"get_resource_fs_record";s:11:"description";s:25:"Get a Resource-fs record.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:54:"A pair: the JSON data, the path (null: could not find)";}}s:31:"get_resource_commandr_fs_object";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}}s:4:"name";s:31:"get_resource_commandr_fs_object";s:11:"description";s:47:"Get the Commandr-fs object for a resource type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?object";s:11:"description";s:36:"The object (null: could not get one)";}}s:28:"generate_resource_fs_moniker";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:7:{s:4:"name";s:5:"label";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:53:"The (new) label (null: lookup for specified resource)";s:11:"phpdoc_name";s:5:"label";}i:3;a:7:{s:4:"name";s:8:"new_guid";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:43:"GUID to forcibly assign (null: don't force)";s:11:"phpdoc_name";s:8:"new_guid";}i:4;a:7:{s:4:"name";s:14:"definitely_new";s:7:"default";s:13:"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:"If we know this is new, i.e. has no existing moniker";s:11:"phpdoc_name";s:14:"definitely_new";}}s:4:"name";s:28:"generate_resource_fs_moniker";s:11:"description";s:42:"Generate, and save, a resource-fs moniker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:111:"A triple: The moniker (may be new, or the prior one if the moniker did not need to change), the GUID, the label";}}s:27:"expunge_resource_fs_moniker";a:5:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:27:"expunge_resource_fs_moniker";s:11:"description";s:42:"Generate, and save, a resource-fs moniker.";s:5:"flags";a:0:{}}s:16:"find_guid_via_id";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:16:"find_guid_via_id";s:11:"description";s:44:"Find the resource GUID from the resource ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:25:"The GUID (null: no match)";}}s:32:"find_commandr_fs_filename_via_id";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:2;a:7:{s:4:"name";s:15:"include_subpath";s:7:"default";s:13:"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 include the subpath";s:11:"phpdoc_name";s:15:"include_subpath";}}s:4:"name";s:32:"find_commandr_fs_filename_via_id";s:11:"description";s:64:"Find the Commandr-fs (repository) filename from the resource ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:29:"The filename (null: no match)";}}s:19:"find_moniker_via_id";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:19:"find_moniker_via_id";s:11:"description";s:47:"Find the resource moniker from the resource ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:28:"The moniker (null: no match)";}}s:17:"find_label_via_id";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:17:"find_label_via_id";s:11:"description";s:45:"Find the resource label from the resource ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:26:"The label (null: no match)";}}s:19:"find_id_via_moniker";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:16:"resource_moniker";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"The moniker";s:11:"phpdoc_name";s:16:"resource_moniker";}}s:4:"name";s:19:"find_id_via_moniker";s:11:"description";s:47:"Find the resource ID from the resource moniker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:23:"The ID (null: no match)";}}s:17:"find_id_via_label";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:15:"_resource_label";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:9:"The label";s:11:"phpdoc_name";s:15:"_resource_label";}i:2;a:7:{s:4:"name";s:7:"subpath";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:108:"The subpath (null: don't care). It may end in "/*" if you want to look for a match under a certain directory";s:11:"phpdoc_name";s:7:"subpath";}}s:4:"name";s:17:"find_id_via_label";s:11:"description";s:45:"Find the resource ID from the resource label.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:23:"The ID (null: no match)";}}s:15:"_check_id_match";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"commandr_fs_ob";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:30:"Commandr-fs/Resource-fs object";s:11:"phpdoc_name";s:14:"commandr_fs_ob";}i:1;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:2;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The resource ID";s:11:"phpdoc_name";s:11:"resource_id";}i:3;a:5:{s:4:"name";s:7:"subpath";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:108:"The subpath (null: don't care). It may end in "/*" if you want to look for a match under a certain directory";s:11:"phpdoc_name";s:7:"subpath";}}s:4:"name";s:15:"_check_id_match";s:11:"description";s:45:"Find if a resource matches search parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether it matches";}}s:16:"find_id_via_guid";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"resource_guid";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The GUID";s:11:"phpdoc_name";s:13:"resource_guid";}}s:4:"name";s:16:"find_id_via_guid";s:11:"description";s:112:"Find the resource ID from the resource GUID. It is assumed you as the programmer already know the resource-type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:23:"The ID (null: no match)";}}s:18:"find_ids_via_guids";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"guids";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The GUIDs";s:11:"phpdoc_name";s:5:"guids";}}s:4:"name";s:18:"find_ids_via_guids";s:11:"description";s:136:"Find the resource IDs from the resource GUIDs. This is useful if you need to resolve many GUIDs at once during performant-critical code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:121:"Mapping between GUIDs and IDs (anything where there's no match will result in no array entry being present for that GUID)";}}s:32:"find_id_via_commandr_fs_filename";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:32:"find_id_via_commandr_fs_filename";s:11:"description";s:64:"Find the resource ID from the Commandr-fs (repository) filename.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:23:"The ID (null: no match)";}}s:13:"table_to_json";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:3:{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:10:"Table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:7:{s:4:"name";s:14:"fields_to_skip";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:155:"Fields to not include in the table dump (null: none). Any keys from $where_map will also be skipped, as these are obviously constant for all rows returned.";s:11:"phpdoc_name";s:14:"fields_to_skip";}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:36:"Extra WHERE constraints (null: none)";s:11:"phpdoc_name";s:9:"where_map";}}s:4:"name";s:13:"table_to_json";s:11:"description";s:43:"Transfer a table's contents to JSON format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"JSON data";}}s:22:"table_to_portable_rows";a:6:{s:8:"filename";s:23:"sources/resource_fs.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:10:"Table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:7:{s:4:"name";s:14:"fields_to_skip";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:155:"Fields to not include in the table dump (null: none). Any keys from $where_map will also be skipped, as these are obviously constant for all rows returned.";s:11:"phpdoc_name";s:14:"fields_to_skip";}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:36:"Extra WHERE constraints (null: none)";s:11:"phpdoc_name";s:9:"where_map";}i:3;a:7:{s:4:"name";s:10:"connection";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:68:"Database connection to look up from (null: work out from table name)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:22:"table_to_portable_rows";s:11:"description";s:45:"Transfer a table's contents to portable rows.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"Portable rows";}}s:15:"table_from_json";a:6:{s:8:"filename";s:23:"sources/resource_fs.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:10:"Table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:4:"json";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:42:"JSON data OR rows that are already decoded";s:11:"phpdoc_name";s:4:"json";}i:2;a:5:{s:4:"name";s:16:"extra_field_data";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:42:"Extra data to add to each row (null: none)";s:11:"phpdoc_name";s:16:"extra_field_data";}i:3;a:5:{s:4:"name";s:12:"replace_mode";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"Whether to fully replace the current table contents";s:11:"phpdoc_name";s:12:"replace_mode";}}s:4:"name";s:15:"table_from_json";s:11:"description";s:32:"Transfer JSON format to a table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:24:"table_from_portable_rows";a:6:{s:8:"filename";s:23:"sources/resource_fs.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:10:"Table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:4:"rows";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Portable rows";s:11:"phpdoc_name";s:4:"rows";}i:2;a:5:{s:4:"name";s:16:"extra_field_data";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:42:"Extra data to add to each row (null: none)";s:11:"phpdoc_name";s:16:"extra_field_data";}i:3;a:5:{s:4:"name";s:12:"replace_mode";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"Whether to fully replace the current table contents";s:11:"phpdoc_name";s:12:"replace_mode";}i:4;a:7:{s:4:"name";s:10:"connection";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:68:"Database connection to look up from (null: work out from table name)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:24:"table_from_portable_rows";s:11:"description";s:34:"Transfer portable rows to a table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:25:"table_row_to_portable_row";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:4:{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:9:"Table row";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:88:"A map of DB-style schema data for the fields we have in $row; helps us build portability";s:11:"phpdoc_name";s:9:"db_fields";}i:2;a:5:{s:4:"name";s:12:"relation_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Relation map";s:11:"phpdoc_name";s:12:"relation_map";}i:3;a:7:{s:4:"name";s:10:"connection";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:"Database connection to look up from (null: main site DB)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:25:"table_row_to_portable_row";s:11:"description";s:32:"Make a table row a portable row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"Portable row";}}s:27:"table_row_from_portable_row";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:4:{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:12:"Portable row";s:11:"phpdoc_name";s:3:"row";}i:1;a:5:{s:4:"name";s:9:"db_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:88:"A map of DB-style schema data for the fields we have in $row; helps us build portability";s:11:"phpdoc_name";s:9:"db_fields";}i:2;a:5:{s:4:"name";s:12:"relation_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Relation map";s:11:"phpdoc_name";s:12:"relation_map";}i:3;a:7:{s:4:"name";s:10:"connection";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:"Database connection to look up from (null: main site DB)";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:27:"table_row_from_portable_row";s:11:"description";s:32:"Make a portable row a table row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:9:"Table row";}}s:22:"remap_time_as_portable";a:6:{s:8:"filename";s:23:"sources/resource_fs.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:5:"?TIME";s:11:"description";s:29:"The timestamp (null: not set)";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:22:"remap_time_as_portable";s:11:"description";s:78:"Convert a timestamp to something portable (well, actually just make it nicer).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:32:"Portable details (null: not set)";}}s:22:"remap_portable_as_time";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"portable_data";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:32:"Portable details (null: not set)";s:11:"phpdoc_name";s:13:"portable_data";}}s:4:"name";s:22:"remap_portable_as_time";s:11:"description";s:49:"Convert a portable timestamp to a real timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:29:"The timestamp (null: not set)";}}s:25:"remap_urlpath_as_portable";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"urlpath";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:23:"The URL (null: not set)";s:11:"phpdoc_name";s:7:"urlpath";}}s:4:"name";s:25:"remap_urlpath_as_portable";s:11:"description";s:59:"Convert a URL (external or internal) to something portable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:32:"Portable details (null: not set)";}}s:25:"remap_portable_as_urlpath";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"portable_data";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:32:"Portable details (null: not set)";s:11:"phpdoc_name";s:13:"portable_data";}i:1;a:7:{s:4:"name";s:16:"ignore_conflicts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether to ignore conflicts with existing files (=edit op, basically)";s:11:"phpdoc_name";s:16:"ignore_conflicts";}}s:4:"name";s:25:"remap_portable_as_urlpath";s:11:"description";s:37:"Convert a portable URL to a real URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:23:"The URL (null: not set)";}}s:29:"remap_foreign_key_as_portable";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"_table_referenced";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The table the key is to";s:11:"phpdoc_name";s:17:"_table_referenced";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:23:"The key (null: not set)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:29:"remap_foreign_key_as_portable";s:11:"description";s:44:"Convert a foreign key to something portable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:35:"Portable ID details (null: not set)";}}s:29:"remap_portable_as_foreign_key";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:17:"_table_referenced";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The table the key is to";s:11:"phpdoc_name";s:17:"_table_referenced";}i:1;a:5:{s:4:"name";s:13:"portable_data";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:35:"Portable ID details (null: not set)";s:11:"phpdoc_name";s:13:"portable_data";}}s:4:"name";s:29:"remap_portable_as_foreign_key";s:11:"description";s:53:"Convert a portable foreign key to a real foreign key.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:23:"The key (null: not set)";}}s:29:"remap_resource_id_as_portable";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:11:"resource_id";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:31:"The resource ID (null: not set)";s:11:"phpdoc_name";s:11:"resource_id";}}s:4:"name";s:29:"remap_resource_id_as_portable";s:11:"description";s:41:"Convert a local ID to something portable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:35:"Portable ID details (null: not set)";}}s:29:"remap_portable_as_resource_id";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"resource_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The resource type";s:11:"phpdoc_name";s:13:"resource_type";}i:1;a:5:{s:4:"name";s:13:"portable_data";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:35:"Portable ID details (null: not set)";s:11:"phpdoc_name";s:13:"portable_data";}}s:4:"name";s:29:"remap_portable_as_resource_id";s:11:"description";s:41:"Convert a portable ID to something local.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:31:"The resource ID (null: not set)";}}s:23:"remap_trans_as_portable";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"db_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Database row";s:11:"phpdoc_name";s:6:"db_row";}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:14:"Database field";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"Database connection to look up from";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:23:"remap_trans_as_portable";s:11:"description";s:127:"Find all translated strings for a language string ID. This is used as an intermediate step in creating multi-language portings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"Portable data";}}s:23:"remap_portable_as_trans";a:6:{s:8:"filename";s:23:"sources/resource_fs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"portable_data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Portable data";s:11:"phpdoc_name";s:13:"portable_data";}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:14:"Database field";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:10:"connection";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:35:"Database connection to look up from";s:11:"phpdoc_name";s:10:"connection";}}s:4:"name";s:23:"remap_portable_as_trans";s:11:"description";s:127:"Find all translated strings for a language string ID. This is used as an intermediate step in creating multi-language portings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Extra database row data";}}s:19:"extract_plain_links";a:6:{s:8:"filename";s:15:"sources/rss.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:11:"The matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:19:"extract_plain_links";s:11:"description";s:46:"Used to turn plain-text links into real links.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The replacement";}}s:12:"cleanup_date";a:6:{s:8:"filename";s:15:"sources/rss.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:12:"The ISO date";s:11:"phpdoc_name";s:4:"date";}}s:4:"name";s:12:"cleanup_date";s:11:"description";s:37:"Convert an ISO date into a timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:98:"If only one element, it contains the timestamp. Otherwise it is a pair: (string format, timestamp)";}}s:20:"backend_cloud_script";a:5:{s:8:"filename";s:16:"sources/rss2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"backend_cloud_script";s:11:"description";s:31:"Handle RSS cloud registrations.";s:5:"flags";a:0:{}}s:20:"_cloud_register_them";a:6:{s:8:"filename";s:16:"sources/rss2.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:10:"SHORT_TEXT";s:11:"description";s:23:"The news category title";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:9:"procedure";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The procedure they are interested in";s:11:"phpdoc_name";s:9:"procedure";}i:2;a:5:{s:4:"name";s:8:"protocol";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The protocol they are using";s:11:"phpdoc_name";s:8:"protocol";}i:3;a:5:{s:4:"name";s:4:"port";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The port to connect to them on";s:11:"phpdoc_name";s:4:"port";}i:4;a:5:{s:4:"name";s:16:"watching_channel";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:34:"The channel they are interested in";s:11:"phpdoc_name";s:16:"watching_channel";}}s:4:"name";s:20:"_cloud_register_them";s:11:"description";s:33:"Set up an RSS cloud registration.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:18:"rss_backend_script";a:5:{s:8:"filename";s:16:"sources/rss2.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"rss_backend_script";s:11:"description";s:23:"Handle RSS/Atom output.";s:5:"flags";a:0:{}}s:21:"get_enclosure_details";a:6:{s:8:"filename";s:16:"sources/rss2.php";s:10:"parameters";a:2:{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:43:"The (possibly short) URL to get details for";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:13:"enclosure_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:31:"The full URL to get details for";s:11:"phpdoc_name";s:13:"enclosure_url";}}s:4:"name";s:21:"get_enclosure_details";s:11:"description";s:61:"Get enclosure details from a URL, as efficiently as possible.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"A pair: the length of the data, the mime type";}}s:12:"init__search";a:5:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__search";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:14:"is_under_radar";a:6:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"test";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The phrase";s:11:"phpdoc_name";s:4:"test";}}s:4:"name";s:14:"is_under_radar";s:11:"description";s:55:"Find whether a phrase is too small for fulltext search.";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:25:"get_minimum_search_length";a:6:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_minimum_search_length";s:11:"description";s:36:"Get minimum search length for MySQL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"Search length";}}s:23:"find_search_suggestions";a:6:{s:8:"filename";s:18:"sources/search.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"request";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Search request";s:11:"phpdoc_name";s:7:"request";}i:1;a:7:{s:4:"name";s:11:"search_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:38:"The search type it is for (blank: N/A)";s:11:"phpdoc_name";s:11:"search_type";}}s:4:"name";s:23:"find_search_suggestions";s:11:"description";s:75:"Find autocomplete suggestions to complete a partially-typed search request.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"List of suggestions";}}s:15:"do_search_block";a:6:{s:8:"filename";s:18:"sources/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:23:"Search block parameters";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:15:"do_search_block";s:11:"description";s:24:"Generate a search block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"Search block template parameters";}}s:29:"selectcode_to_idlist_using_db";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The filter";s:11:"phpdoc_name";s:6:"filter";}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:57:"The database's ID field for the record-set we're matching";s:11:"phpdoc_name";s:10:"field_name";}i:2;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"The database's table for the record-set we're matching";s:11:"phpdoc_name";s:10:"table_name";}i:3;a:7:{s:4:"name";s:23:"parent_spec__table_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:253:"The database's table that contains parent/child relationships in the record-set's category-set (the category-set is equal to the record-set if we're matching categories, but not if we're matching entries) (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:23:"parent_spec__table_name";}i:4;a:7:{s:4:"name";s:24:"parent_spec__parent_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:137:"The database's field name for the category-set's parent-category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:24:"parent_spec__parent_name";}i:5;a:7:{s:4:"name";s:19:"category_field_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:124:"The database's field name for the record-set's container-category specifier (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:19:"category_field_name";}i:6;a:7:{s:4:"name";s:23:"parent_spec__field_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:130:"The database's field name for the category-set's category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:23:"parent_spec__field_name";}i:7;a:7:{s:4:"name";s:22:"numeric_record_set_ids";s:7:"default";s:12:"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 the record-set IDs are numeric";s:11:"phpdoc_name";s:22:"numeric_record_set_ids";}i:8;a:7:{s:4:"name";s:24:"numeric_category_set_ids";s:7:"default";s:12:"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:"Whether the category-set IDs are numeric";s:11:"phpdoc_name";s:24:"numeric_category_set_ids";}i:9;a:7:{s:4:"name";s:2:"db";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:42:"Database connection to use (null: website)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:29:"selectcode_to_idlist_using_db";s:11:"description";s:141:"Turn an Selectcode (a filter specifying which records to match) into a list of ID numbers, relying on the database to extract the record-set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"A list of ID numbers";}}s:33:"selectcode_to_idlist_using_memory";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The filter";s:11:"phpdoc_name";s:6:"filter";}i:1;a:5:{s:4:"name";s:15:"ids_and_parents";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:63:"A map between record-set IDs and record-set parent-category-IDs";s:11:"phpdoc_name";s:15:"ids_and_parents";}i:2;a:7:{s:4:"name";s:23:"parent_spec__table_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:253:"The database's table that contains parent/child relationships in the record-set's category-set (the category-set is equal to the record-set if we're matching categories, but not if we're matching entries) (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:23:"parent_spec__table_name";}i:3;a:7:{s:4:"name";s:24:"parent_spec__parent_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:137:"The database's field name for the category-set's parent-category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:24:"parent_spec__parent_name";}i:4;a:7:{s:4:"name";s:19:"category_field_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:124:"The database's field name for the record-set's container-category specifier (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:19:"category_field_name";}i:5;a:7:{s:4:"name";s:23:"parent_spec__field_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:130:"The database's field name for the category-set's category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:23:"parent_spec__field_name";}i:6;a:7:{s:4:"name";s:22:"numeric_record_set_ids";s:7:"default";s:12:"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 the record-set IDs are numeric";s:11:"phpdoc_name";s:22:"numeric_record_set_ids";}i:7;a:7:{s:4:"name";s:24:"numeric_category_set_ids";s:7:"default";s:12:"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:"Whether the category-set IDs are numeric";s:11:"phpdoc_name";s:24:"numeric_category_set_ids";}i:8;a:7:{s:4:"name";s:2:"db";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:42:"Database connection to use (null: website)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:33:"selectcode_to_idlist_using_memory";s:11:"description";s:148:"Turn an Selectcode (a filter specifying which records to match) into a list of ID numbers, using a prebuilt memory representation of the record-set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"A list of ID numbers";}}s:35:"selectcode_to_idlist_using_callback";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The filter";s:11:"phpdoc_name";s:6:"filter";}i:1;a:5:{s:4:"name";s:24:"ids_and_parents_callback";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:289:"A call_user_func_array specifier to a function that will give a map between record-set IDs and record-set parent-category-IDs. We pass a call_user_func_array specifier because we don't want to have to generate it unless we need to (if we need to do 'avoiding' matches or 'subtree' matches)";s:11:"phpdoc_name";s:24:"ids_and_parents_callback";}i:2;a:7:{s:4:"name";s:23:"parent_spec__table_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:253:"The database's table that contains parent/child relationships in the record-set's category-set (the category-set is equal to the record-set if we're matching categories, but not if we're matching entries) (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:23:"parent_spec__table_name";}i:3;a:7:{s:4:"name";s:24:"parent_spec__parent_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:137:"The database's field name for the category-set's parent-category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:24:"parent_spec__parent_name";}i:4;a:7:{s:4:"name";s:19:"category_field_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:124:"The database's field name for the record-set's container-category specifier (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:19:"category_field_name";}i:5;a:7:{s:4:"name";s:23:"parent_spec__field_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:130:"The database's field name for the category-set's category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:23:"parent_spec__field_name";}i:6;a:7:{s:4:"name";s:22:"numeric_record_set_ids";s:7:"default";s:12:"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 the record-set IDs are numeric";s:11:"phpdoc_name";s:22:"numeric_record_set_ids";}i:7;a:7:{s:4:"name";s:24:"numeric_category_set_ids";s:7:"default";s:12:"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:"Whether the category-set IDs are numeric";s:11:"phpdoc_name";s:24:"numeric_category_set_ids";}i:8;a:7:{s:4:"name";s:2:"db";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:42:"Database connection to use (null: website)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:35:"selectcode_to_idlist_using_callback";s:11:"description";s:90:"Turn an Selectcode (a filter specifying which records to match) into a list of ID numbers.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"A list of ID numbers";}}s:25:"selectcode_to_sqlfragment";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The filter";s:11:"phpdoc_name";s:6:"filter";}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:69:"The database's ID field for the record-set we're matching. E.g. 'id'.";s:11:"phpdoc_name";s:10:"field_name";}i:2;a:7:{s:4:"name";s:23:"parent_spec__table_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:273:"The database's table that contains parent/child relationships in the record-set's category-set (the category-set is equal to the record-set if we're matching categories, but not if we're matching entries) (null: don't support subtree [*-style] searches). E.g. 'categories'.";s:11:"phpdoc_name";s:23:"parent_spec__table_name";}i:3;a:7:{s:4:"name";s:24:"parent_spec__parent_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:156:"The database's field name for the category-set's parent-category-ID (null: don't support subtree [*-style] searches beyond the tree base). E.g. 'parent_id'.";s:11:"phpdoc_name";s:24:"parent_spec__parent_name";}i:4;a:7:{s:4:"name";s:19:"category_field_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:137:"The database's field name for the record-set's container-category specifier (null: don't support subtree [*-style] searches). E.g. 'cat'.";s:11:"phpdoc_name";s:19:"category_field_name";}i:5;a:7:{s:4:"name";s:23:"parent_spec__field_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:142:"The database's field name for the category-set's category-ID (null: don't support subtree [*-style] searches beyond the tree base). E.g. 'id'.";s:11:"phpdoc_name";s:23:"parent_spec__field_name";}i:6;a:7:{s:4:"name";s:22:"numeric_record_set_ids";s:7:"default";s:12:"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 the record-set IDs are numeric";s:11:"phpdoc_name";s:22:"numeric_record_set_ids";}i:7;a:7:{s:4:"name";s:24:"numeric_category_set_ids";s:7:"default";s:12:"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:"Whether the category-set IDs are numeric";s:11:"phpdoc_name";s:24:"numeric_category_set_ids";}i:8;a:7:{s:4:"name";s:2:"db";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:42:"Database connection to use (null: website)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:25:"selectcode_to_sqlfragment";s:11:"description";s:91:"Turn an Selectcode (a filter specifying which records to match) into an SQL query fragment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:129:"SQL query fragment. Note that brackets will be put around this automatically if required, so there's no need to do this yourself.";}}s:22:"_selectcode_to_generic";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The filter";s:11:"phpdoc_name";s:6:"filter";}i:1;a:5:{s:4:"name";s:10:"field_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:95:"The database's ID field for the record-set we're matching (null: use a different lookup method)";s:11:"phpdoc_name";s:10:"field_name";}i:2;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:92:"The database's table for the record-set we're matching (null: use a different lookup method)";s:11:"phpdoc_name";s:10:"table_name";}i:3;a:5:{s:4:"name";s:15:"ids_and_parents";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:101:"A map between record-set IDs and record-set parent-category-IDs (null: use a different lookup method)";s:11:"phpdoc_name";s:15:"ids_and_parents";}i:4;a:5:{s:4:"name";s:24:"ids_and_parents_callback";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:327:"A call_user_func_array specifier to a function that will give a map between record-set IDs and record-set parent-category-IDs. We pass a call_user_func_array specifier because we don't want to have to generate it unless we need to (if we need to do 'avoiding' matches or 'subtree' matches) (null: use a different lookup method)";s:11:"phpdoc_name";s:24:"ids_and_parents_callback";}i:5;a:5:{s:4:"name";s:23:"parent_spec__table_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:253:"The database's table that contains parent/child relationships in the record-set's category-set (the category-set is equal to the record-set if we're matching categories, but not if we're matching entries) (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:23:"parent_spec__table_name";}i:6;a:5:{s:4:"name";s:24:"parent_spec__parent_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:137:"The database's field name for the category-set's parent-category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:24:"parent_spec__parent_name";}i:7;a:5:{s:4:"name";s:19:"category_field_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:124:"The database's field name for the record-set's container-category specifier (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:19:"category_field_name";}i:8;a:5:{s:4:"name";s:23:"parent_spec__field_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:130:"The database's field name for the category-set's category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:23:"parent_spec__field_name";}i:9;a:5:{s:4:"name";s:22:"numeric_record_set_ids";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the record-set IDs are numeric";s:11:"phpdoc_name";s:22:"numeric_record_set_ids";}i:10;a:5:{s:4:"name";s:24:"numeric_category_set_ids";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the category-set IDs are numeric";s:11:"phpdoc_name";s:24:"numeric_category_set_ids";}i:11;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:7:"?object";s:11:"description";s:42:"Database connection to use (null: website)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:22:"_selectcode_to_generic";s:11:"description";s:141:"Turn an Selectcode (a filter specifying which records to match) into a list of ID numbers, relying on the database to extract the record-set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"A list of ID numbers";}}s:31:"_selectcode_to_generic_callback";a:6:{s:8:"filename";s:22:"sources/selectcode.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:"?string";s:11:"description";s:92:"The database's table for the record-set we're matching (null: use a different lookup method)";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:7:"?string";s:11:"description";s:95:"The database's ID field for the record-set we're matching (null: use a different lookup method)";s:11:"phpdoc_name";s:10:"field_name";}i:2;a:5:{s:4:"name";s:19:"category_field_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:124:"The database's field name for the record-set's container-category specifier (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:19:"category_field_name";}i:3;a:5:{s:4:"name";s:14:"has_no_parents";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether there are parents in the filter";s:11:"phpdoc_name";s:14:"has_no_parents";}i:4;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:7:"?object";s:11:"description";s:42:"Database connection to use (null: website)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:31:"_selectcode_to_generic_callback";s:11:"description";s:146:"Function to do an actual data lookup sourced via the database, used as a kind of a callback function (it's name gets passed into the generic API).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"A list of ID numbers";}}s:15:"_selectcode_neq";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:3:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:60:"The string value (may actually hold an integer, if $numeric)";s:11:"phpdoc_name";s:3:"var";}i:2;a:5:{s:4:"name";s:7:"numeric";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the value is numeric";s:11:"phpdoc_name";s:7:"numeric";}}s:4:"name";s:15:"_selectcode_neq";s:11:"description";s:59:"Helper function to generate an SQL "not equal to" fragment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"SQL fragment";}}s:14:"_selectcode_eq";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:3:{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:14:"The field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:60:"The string value (may actually hold an integer, if $numeric)";s:11:"phpdoc_name";s:3:"var";}i:2;a:5:{s:4:"name";s:7:"numeric";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the value is numeric";s:11:"phpdoc_name";s:7:"numeric";}}s:4:"name";s:14:"_selectcode_eq";s:11:"description";s:55:"Helper function to generate an SQL "equal to" fragment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"SQL fragment";}}s:25:"_selectcode_subtree_fetch";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:10:"look_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"The category-ID we are searching under";s:11:"phpdoc_name";s:10:"look_under";}i:1;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:253:"The database's table that contains parent/child relationships in the record-set's category-set (the category-set is equal to the record-set if we're matching categories, but not if we're matching entries) (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:10:"table_name";}i:2;a:5:{s:4:"name";s:11:"parent_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:137:"The database's field name for the category-set's parent-category-ID (null: don't support subtree [*-style] searches beyond the tree base)";s:11:"phpdoc_name";s:11:"parent_name";}i:3;a:5:{s:4:"name";s:10:"field_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:60:"The database's field name for the category-set's category-ID";s:11:"phpdoc_name";s:10:"field_name";}i:4;a:5:{s:4:"name";s:11:"numeric_ids";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether the category-set IDs are numeric";s:11:"phpdoc_name";s:11:"numeric_ids";}i:5;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:26:"Database connection to use";s:11:"phpdoc_name";s:2:"db";}i:6;a:5:{s:4:"name";s:15:"cached_mappings";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:118:"A place to store cached data we've already loaded once in this function. Pass in an null variable (not a null literal)";s:11:"phpdoc_name";s:15:"cached_mappings";}i:7;a:7:{s:4:"name";s:5:"first";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether this is the base call to this recursive function (just leave it as the default, true)";s:11:"phpdoc_name";s:5:"first";}i:8;a:7:{s:4:"name";s:7:"recurse";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to run recursively";s:11:"phpdoc_name";s:7:"recurse";}}s:4:"name";s:25:"_selectcode_subtree_fetch";s:11:"description";s:53:"Helper function to fetch a subtree from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:36:"Subtree: list of IDs in category-set";}}s:32:"_selectcode_find_ids_and_parents";a:6:{s:8:"filename";s:22:"sources/selectcode.php";s:10:"parameters";a:4:{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:35:"The ID field name in the record-set";s:11:"phpdoc_name";s:10:"field_name";}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:32:"The table name of the record-set";s:11:"phpdoc_name";s:10:"table_name";}i:2;a:5:{s:4:"name";s:19:"category_field_name";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:124:"The database's field name for the record-set's container-category specifier (null: don't support subtree [*-style] searches)";s:11:"phpdoc_name";s:19:"category_field_name";}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:26:"Database connection to use";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:32:"_selectcode_find_ids_and_parents";s:11:"description";s:53:"Helper function to fetch a subtree from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"A map between record-set IDs and record-set parent-category-IDs";}}s:22:"seo_meta_clear_caching";a:5:{s:8:"filename";s:16:"sources/seo2.php";s:10:"parameters";a:2:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 ID of the resource";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:22:"seo_meta_clear_caching";s:11:"description";s:41:"Clear caching for a particular seo entry.";s:5:"flags";a:0:{}}s:22:"seo_meta_erase_storage";a:5:{s:8:"filename";s:16:"sources/seo2.php";s:10:"parameters";a:3:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 ID of the resource";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:10:"do_decache";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to clear caching for this too";s:11:"phpdoc_name";s:10:"do_decache";}}s:4:"name";s:22:"seo_meta_erase_storage";s:11:"description";s:87:"Erase a seo entry... as these shouldn't be left hanging around once content is deleted.";s:5:"flags";a:0:{}}s:14:"seo_get_fields";a:6:{s:8:"filename";s:16:"sources/seo2.php";s:10:"parameters";a:3:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 resource (null: adding)";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:11:"show_header";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether to show a header";s:11:"phpdoc_name";s:11:"show_header";}}s:4:"name";s:14:"seo_get_fields";s:11:"description";s:79:"Get template fields to insert into a form page, for manipulation of seo fields.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Form page Tempcode fragment";}}s:25:"seo_meta_set_for_explicit";a:5:{s:8:"filename";s:16:"sources/seo2.php";s:10:"parameters";a:4:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 ID of the resource";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:8:"keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"The keywords to use";s:11:"phpdoc_name";s:8:"keywords";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The description to use";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:25:"seo_meta_set_for_explicit";s:11:"description";s:63:"Explictly sets the meta information for the specified resource.";s:5:"flags";a:0:{}}s:19:"_seo_meta_find_data";a:6:{s:8:"filename";s:16:"sources/seo2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:15:"keyword_sources";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:42:"Array of content strings to summarise from";s:11:"phpdoc_name";s:15:"keyword_sources";}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:10:"SHORT_TEXT";s:11:"description";s:22:"The description to use";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:19:"_seo_meta_find_data";s:11:"description";s:62:"Automatically extracts meta information from some source data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:55:"A pair: Keyword string generated, Description generated";}}s:25:"seo_meta_set_for_implicit";a:6:{s:8:"filename";s:16:"sources/seo2.php";s:10:"parameters";a:4:{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:36:"The type of resource (e.g. download)";s:11:"phpdoc_name";s:4:"type";}i:1;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 ID of the resource";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:15:"keyword_sources";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:42:"Array of content strings to summarise from";s:11:"phpdoc_name";s:15:"keyword_sources";}i:3;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The description to use";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:25:"seo_meta_set_for_implicit";s:11:"description";s:102:"Sets the meta information for the specified resource, by auto-summarisation from the given parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:95:"Keyword string generated (it's also saved in the DB, so usually you won't want to collect this)";}}s:15:"_get_zone_pages";a:6:{s:8:"filename";s:23:"sources/setupwizard.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:20:"installprofileblocks";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:37:"List of blocks in the install profile";s:11:"phpdoc_name";s:20:"installprofileblocks";}i:1;a:5:{s:4:"name";s:13:"block_options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:36:"Block options in the install profile";s:11:"phpdoc_name";s:13:"block_options";}i:2;a:5:{s:4:"name";s:14:"collapse_zones";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether we have zone collapsing on";s:11:"phpdoc_name";s:14:"collapse_zones";}i:3;a:5:{s:4:"name";s:14:"installprofile";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"ID of the install profile";s:11:"phpdoc_name";s:14:"installprofile";}}s:4:"name";s:15:"_get_zone_pages";s:11:"description";s:38:"Get Comcode for the pages in the zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"Structure of pages";}}s:18:"current_share_user";a:6:{s:8:"filename";s:27:"sources/shared_installs.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"current_share_user";s:11:"description";s:154:"Find the user-ID of the current shared-site install from the accessing URL. This should only ever be called when it is known a shared-site is in operation";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:42:"The shared-site install (null: not on one)";}}s:19:"get_product_details";a:6:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_product_details";s:11:"description";s:87:"Get product details array, according to the hook specified in the 'hook' GET parameter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"Product details";}}s:21:"find_products_in_cart";a:6:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"find_products_in_cart";s:11:"description";s:21:"Find products in cart";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Product details in cart";}}s:11:"add_to_cart";a:5:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"product_det";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Product details";s:11:"phpdoc_name";s:11:"product_det";}}s:4:"name";s:11:"add_to_cart";s:11:"description";s:25:"Add new item to the cart.";s:5:"flags";a:0:{}}s:11:"update_cart";a:5:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"product_det";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Product details";s:11:"phpdoc_name";s:11:"product_det";}}s:4:"name";s:11:"update_cart";s:11:"description";s:27:"Update cart quantities etc.";s:5:"flags";a:0:{}}s:16:"remove_from_cart";a:5:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:17:"product_to_remove";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"Products to remove";s:11:"phpdoc_name";s:17:"product_to_remove";}}s:4:"name";s:16:"remove_from_cart";s:11:"description";s:38:"Remove particular items from the cart.";s:5:"flags";a:0:{}}s:10:"empty_cart";a:5:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:11:"soft_delete";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether to just do a soft delete, i.e. mark as deleted.";s:11:"phpdoc_name";s:11:"soft_delete";}}s:4:"name";s:10:"empty_cart";s:11:"description";s:42:"Delete cart contents for the current user.";s:5:"flags";a:0:{}}s:16:"log_cart_actions";a:5:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:1:{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:8:"The data";s:11:"phpdoc_name";s:6:"action";}}s:4:"name";s:16:"log_cart_actions";s:11:"description";s:16:"Log cart actions";s:5:"flags";a:0:{}}s:24:"delete_incomplete_orders";a:5:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"delete_incomplete_orders";s:11:"description";s:39:"Delete incomplete orders from ages ago.";s:5:"flags";a:0:{}}s:38:"delete_pending_orders_for_current_user";a:5:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"delete_pending_orders_for_current_user";s:11:"description";s:105:"Delete any pending orders for the current user. E.g. if cart purchase was cancelled, or cart was changed.";s:5:"flags";a:0:{}}s:24:"render_cart_payment_form";a:6:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"render_cart_payment_form";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:28:"get_order_tax_opt_out_status";a:6:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"get_order_tax_opt_out_status";s:11:"description";s:38:"Find current order tax opt out status.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"BINARY";s:11:"description";s:35:"Tax opt out status of current order";}}s:20:"get_current_order_id";a:6:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_order_id";s:11:"description";s:22:"Find current order ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:21:"Order ID (null: none)";}}s:24:"purchase_done_staff_mail";a:5:{s:8:"filename";s:20:"sources/shopping.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:24:"purchase_done_staff_mail";s:11:"description";s:44:"Tell the staff the shopping order was placed";s:5:"flags";a:0:{}}s:24:"stock_maintain_warn_mail";a:5:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"product_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"Product name";s:11:"phpdoc_name";s:12:"product_name";}i:1;a:5:{s:4:"name";s:10:"product_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:10:"Product ID";s:11:"phpdoc_name";s:10:"product_id";}}s:4:"name";s:24:"stock_maintain_warn_mail";s:11:"description";s:27:"Stock maintain warning mail";s:5:"flags";a:0:{}}s:12:"update_stock";a:5:{s:8:"filename";s:20:"sources/shopping.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:6:"The ID";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:12:"update_stock";s:11:"description";s:16:"Stock reduction.";s:5:"flags";a:0:{}}s:21:"get_order_status_list";a:6:{s:8:"filename";s:20:"sources/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"get_order_status_list";s:11:"description";s:53:"Return list entry of common order statuses of orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:25:"Order status list entries";}}s:31:"get_ordered_product_list_string";a:6:{s:8:"filename";s:20:"sources/shopping.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:31:"get_ordered_product_list_string";s:11:"description";s:45:"Get a string of ordered products for display.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:27:"Products names and quantity";}}s:10:"init__site";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"init__site";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:21:"check_has_page_access";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"check_has_page_access";s:11:"description";s:37:"Load up details for the current zone.";s:5:"flags";a:0:{}}s:14:"load_zone_data";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"load_zone_data";s:11:"description";s:37:"Load up details for the current zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:95:"The "real" zone name (not actually the zone name, but the zone name wants details to load for).";}}s:20:"attach_to_javascript";a:5:{s:8:"filename";s:16:"sources/site.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:5:"mixed";s:11:"description";s:41:"JavaScript to attach (Tempcode or string)";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:20:"attach_to_javascript";s:11:"description";s:107:"Attach some extra JavaScript to . Don't use this too commonly, it's not a 'tidy' way of doing things.";s:5:"flags";a:0:{}}s:23:"attach_to_screen_header";a:5:{s:8:"filename";s:16:"sources/site.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:5:"mixed";s:11:"description";s:36:"XHTML to attach (Tempcode or string)";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:23:"attach_to_screen_header";s:11:"description";s:39:"Attach some XHTML to the screen header.";s:5:"flags";a:0:{}}s:30:"inform_non_canonical_parameter";a:5:{s:8:"filename";s:16:"sources/site.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:7:"ID_TEXT";s:11:"description";s:14:"Parameter name";s:11:"phpdoc_name";s:5:"param";}i:1;a:7:{s:4:"name";s:39:"block_page_from_static_cache_if_present";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"If set to true and if this parameter is present in the URL then no static cache save will happen";s:11:"phpdoc_name";s:39:"block_page_from_static_cache_if_present";}}s:4:"name";s:30:"inform_non_canonical_parameter";s:11:"description";s:90:"Mark another parameter non-canonical, so that Google won't consider it when indexing URLs.";s:5:"flags";a:0:{}}s:14:"attach_message";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:27:"The type of special message";s:11:"phpdoc_name";s:7:"message";}i:1;a:8:{s:4:"name";s:4:"type";s:7:"default";s:6:"inform";s:11:"default_raw";s:8:"'inform'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"The template to use";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:18:"inform notice warn";}i:2;a:7:{s:4:"name";s:19:"put_in_helper_panel";s:7:"default";s:13:"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 to put into the helper panel instead of the normal header area";s:11:"phpdoc_name";s:19:"put_in_helper_panel";}}s:4:"name";s:14:"attach_message";s:11:"description";s:36:"Attach a message to the page output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:131:"Blank string so it can be chained in the Tempcode compiler. You will rarely want to use this return value. It's kind of a failsafe.";}}s:12:"get_logo_url";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"zone_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:50:"The zone being operated within (null: auto-detect)";s:11:"phpdoc_name";s:9:"zone_name";}}s:4:"name";s:12:"get_logo_url";s:11:"description";s:54:"Get the relative URL to the logo for the current zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:49:"The relative URL to the logo for the current zone";}}s:11:"breadcrumbs";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"show_self";s:7:"default";s:12:"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 show a self segment";s:11:"phpdoc_name";s:9:"show_self";}}s:4:"name";s:11:"breadcrumbs";s:11:"description";s:37:"Get the Tempcode for the breadcrumbs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The breadcrumbs";}}s:28:"breadcrumbs_get_default_stub";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:23:"link_to_self_entrypoint";s:7:"default";s:12:"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 we'll be providing a link to where we are currently at";s:11:"phpdoc_name";s:23:"link_to_self_entrypoint";}}s:4:"name";s:28:"breadcrumbs_get_default_stub";s:11:"description";s:268:"Get the Tempcode for the default breadcrumbs stub. This isn't entirely a default, because it does work with breadcrumb_set_parents. We refer to it as a default as it is possible to override the whole breadcrumbs environment via the special BREADCRUMBS global variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"The default breadcrumb stub";}}s:31:"breadcrumb_segments_to_tempcode";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"segments";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The segments in array format";s:11:"phpdoc_name";s:8:"segments";}i:1;a:7:{s:4:"name";s:23:"link_to_self_entrypoint";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:6:"?mixed";s:11:"description";s:150:"Whether we'll be providing a link to where we are currently at (by reference, gets set to false in some circumstances) (null: don't save by reference)";s:11:"phpdoc_name";s:23:"link_to_self_entrypoint";}}s:4:"name";s:31:"breadcrumb_segments_to_tempcode";s:11:"description";s:52:"Convert breadcrumb segments to Tempcode breadcrumbs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:25:"The segments in Tempcode0";}}s:22:"breadcrumb_set_parents";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"parents";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:59:"The list of parent entry points (pairs: entry point, title)";s:11:"phpdoc_name";s:7:"parents";}}s:4:"name";s:22:"breadcrumb_set_parents";s:11:"description";s:45:"Put a list of parents in for the breadcrumbs.";s:5:"flags";a:0:{}}s:19:"breadcrumb_set_self";a:5:{s:8:"filename";s:16:"sources/site.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:5:"mixed";s:11:"description";s:30:"The title (Tempcode or string)";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:19:"breadcrumb_set_self";s:11:"description";s:22:"Set the current title.";s:5:"flags";a:0:{}}s:12:"set_feed_url";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:1:{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:7:"The URL";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:12:"set_feed_url";s:11:"description";s:28:"Set the feed (RSS/Atom) URL.";s:5:"flags";a:0:{}}s:21:"set_helper_panel_text";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The text";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:6:"append";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:17:"Whether to append";s:11:"phpdoc_name";s:6:"append";}i:2;a:7:{s:4:"name";s:10:"put_in_box";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to add a box around the parameter";s:11:"phpdoc_name";s:10:"put_in_box";}}s:4:"name";s:21:"set_helper_panel_text";s:11:"description";s:26:"Set the helper panel text.";s:5:"flags";a:0:{}}s:25:"set_helper_panel_tutorial";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"tutorial";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:88:"The page name of the tutorial (must be an existing one on the brand site, i.e. compo.sr)";s:11:"phpdoc_name";s:8:"tutorial";}}s:4:"name";s:25:"set_helper_panel_tutorial";s:11:"description";s:30:"Set the helper panel tutorial.";s:5:"flags";a:0:{}}s:15:"set_short_title";a:5:{s:8:"filename";s:16:"sources/site.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:6:"string";s:11:"description";s:15:"The short title";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:15:"set_short_title";s:11:"description";s:124:"Sets the short title, used for screen header text if set.Does not do anything if output streaming is on and already started.";s:5:"flags";a:0:{}}s:20:"process_url_monikers";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The page name to do it for";s:11:"phpdoc_name";s:4:"page";}i:1;a:7:{s:4:"name";s:25:"redirect_if_non_canonical";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Do a redirect if we're not on the canonical URL";s:11:"phpdoc_name";s:25:"redirect_if_non_canonical";}}s:4:"name";s:20:"process_url_monikers";s:11:"description";s:60:"Process URL monikers, changing 'id' GET param to be correct.";s:5:"flags";a:0:{}}s:7:"do_site";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"do_site";s:11:"description";s:187:"This is it - the start of rendering of a website page.Take in all inputs, sends them to the correct functions to process, gathers up all the outputs, sticks them together and echoes them.";s:5:"flags";a:0:{}}s:19:"save_static_caching";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:36:"Output to cache (Tempcode or string)";s:11:"phpdoc_name";s:3:"out";}i:1;a:7:{s:4:"name";s:9:"mime_type";s:7:"default";s:9:"text/html";s:11:"default_raw";s:11:"'text/html'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Mime type to use";s:11:"phpdoc_name";s:9:"mime_type";}}s:4:"name";s:19:"save_static_caching";s:11:"description";s:46:"Do any static cache saving that we want to do.";s:5:"flags";a:0:{}}s:23:"write_static_cache_file";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"fast_cache_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:15:"Cache file path";s:11:"phpdoc_name";s:15:"fast_cache_path";}i:1;a:5:{s:4:"name";s:13:"out_evaluated";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Cache contents";s:11:"phpdoc_name";s:13:"out_evaluated";}i:2;a:5:{s:4:"name";s:12:"support_gzip";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether to allow gzipping";s:11:"phpdoc_name";s:12:"support_gzip";}}s:4:"name";s:23:"write_static_cache_file";s:11:"description";s:30:"Write out a static cache file.";s:5:"flags";a:0:{}}s:12:"request_page";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The codename of the page to load";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:8:"required";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:115:"Whether it is required for this page to exist (shows an error if it doesn't) -- otherwise, it will just return null";s:11:"phpdoc_name";s:8:"required";}i:2;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:67:"The zone the page is being loaded in (null: as shown by access URL)";s:11:"phpdoc_name";s:4:"zone";}i:3;a:7:{s:4:"name";s:9:"page_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:59:"The type of page - for if you know it (null: don't know it)";s:11:"phpdoc_name";s:9:"page_type";}i:4;a:7:{s:4:"name";s:14:"being_included";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the page is being included from another";s:11:"phpdoc_name";s:14:"being_included";}i:5;a:7:{s:4:"name";s:17:"no_redirect_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:55:"Whether to not check for redirects (normally you would)";s:11:"phpdoc_name";s:17:"no_redirect_check";}i:6;a:7:{s:4:"name";s:3:"out";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?object";s:11:"description";s:73:"Semi-filled output template (null: definitely not doing output streaming)";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:12:"request_page";s:11:"description";s:147:"Take the specified parameters, and try to find the corresponding page, then execute a function to load the page (load_html_page/load_comcode_page).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:24:"The page (null: no page)";}}s:13:"_request_page";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The codename of the page to load";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The zone the page is being loaded in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:9:"page_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:59:"The type of page - for if you know it (null: don't know it)";s:11:"phpdoc_name";s:9:"page_type";}i:3;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:14:"?LANGUAGE_NAME";s:11:"description";s:36:"Language name (null: users language)";s:11:"phpdoc_name";s:4:"lang";}i:4;a:7:{s:4:"name";s:17:"no_redirect_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:55:"Whether to not check for redirects (normally you would)";s:11:"phpdoc_name";s:17:"no_redirect_check";}}s:4:"name";s:13:"_request_page";s:11:"description";s:90:"Take the specified parameters, and try to find the corresponding page (caching front end).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:41:"A list of details (false: page not found)";}}s:14:"__request_page";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The codename of the page to load";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The zone the page is being loaded in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:9:"page_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:59:"The type of page - for if you know it (null: don't know it)";s:11:"phpdoc_name";s:9:"page_type";}i:3;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:14:"?LANGUAGE_NAME";s:11:"description";s:36:"Language name (null: users language)";s:11:"phpdoc_name";s:4:"lang";}i:4;a:7:{s:4:"name";s:17:"no_redirect_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:55:"Whether to not check for redirects (normally you would)";s:11:"phpdoc_name";s:17:"no_redirect_check";}}s:4:"name";s:14:"__request_page";s:11:"description";s:70:"Take the specified parameters, and try to find the corresponding page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:41:"A list of details (false: page not found)";}}s:24:"_request_page__redirects";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The codename of the page to load";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The zone the page is being loaded in";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:13:"wildcard_mode";s:7:"default";s:13:"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 also search in wildcard mode";s:11:"phpdoc_name";s:13:"wildcard_mode";}}s:4:"name";s:24:"_request_page__redirects";s:11:"description";s:85:"Take the specified parameters, and try to find a redirect for the corresponding page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:41:"A list of details (false: page not found)";}}s:28:"load_comcode_page_from_cache";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The codename of the page";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The zone the page is being loaded from";s:11:"phpdoc_name";s:4:"zone";}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:9:"The theme";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:28:"load_comcode_page_from_cache";s:11:"description";s:34:"Get a Comcode page from the cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:12:"The page row";}}s:30:"_load_comcodes_page_from_cache";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"pages";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"Details of pages to load";s:11:"phpdoc_name";s:5:"pages";}}s:4:"name";s:30:"_load_comcodes_page_from_cache";s:11:"description";s:52:"Wraps load_comcode_page_from_cache for bulk loading.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"Database rows";}}s:17:"load_comcode_page";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:93:"The relative (to Composr's base directory) path to the page (e.g. pages/comcode/EN/start.txt)";s:11:"phpdoc_name";s:6:"string";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The zone the page is being loaded from";s:11:"phpdoc_name";s:4:"zone";}i:2;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The codename of the page";s:11:"phpdoc_name";s:8:"codename";}i:3;a:7:{s:4:"name";s:9:"file_base";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:43:"The file base to load from (null: standard)";s:11:"phpdoc_name";s:9:"file_base";}i:4;a:7:{s:4:"name";s:14:"being_included";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the page is being included from another";s:11:"phpdoc_name";s:14:"being_included";}i:5;a:7:{s:4:"name";s:3:"out";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?object";s:11:"description";s:73:"Semi-filled output template (null: definitely not doing output streaming)";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:17:"load_comcode_page";s:11:"description";s:42:"Get the parsed contents of a Comcode page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The page";}}s:19:"comcode_breadcrumbs";a:6:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"the_page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The Comcode page name";s:11:"phpdoc_name";s:8:"the_page";}i:1;a:5:{s:4:"name";s:8:"the_zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The Comcode page zone";s:11:"phpdoc_name";s:8:"the_zone";}i:2;a:7:{s:4:"name";s:4:"root";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:16:"The virtual root";s:11:"phpdoc_name";s:4:"root";}i:3;a:7:{s:4:"name";s:18:"no_link_for_me_sir";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:109:"Whether not to put a link at this point in the navigation tree (usually, because the viewer is already at it)";s:11:"phpdoc_name";s:18:"no_link_for_me_sir";}i:4;a:7:{s:4:"name";s:5:"jumps";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:81:"The number of jumps we have gone through so far (cuts out after 10 as a failsafe)";s:11:"phpdoc_name";s:5:"jumps";}}s:4:"name";s:19:"comcode_breadcrumbs";s:11:"description";s:76:"Get a route from a known Comcode page back to the declared root of the tree.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The breadcrumbs";}}s:9:"log_stats";a:5:{s:8:"filename";s:16:"sources/site.php";s:10:"parameters";a:2:{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:27:"The string to the page file";s:11:"phpdoc_name";s:6:"string";}i:1;a:5:{s:4:"name";s:7:"pg_time";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The time taken for page loading in milliseconds";s:11:"phpdoc_name";s:7:"pg_time";}}s:4:"name";s:9:"log_stats";s:11:"description";s:33:"Log statistics for the page view.";s:5:"flags";a:0:{}}s:22:"get_staff_actions_list";a:6:{s:8:"filename";s:17:"sources/site2.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_staff_actions_list";s:11:"description";s:37:"Get list of staff contextual actions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"The list";}}s:24:"get_page_warning_details";a:6:{s:8:"filename";s:17:"sources/site2.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:38:"The zone the page is being loaded from";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The codename of the page";s:11:"phpdoc_name";s:8:"codename";}i:2;a:5:{s:4:"name";s:8:"edit_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The edit URL (blank if no edit access)";s:11:"phpdoc_name";s:8:"edit_url";}}s:4:"name";s:24:"get_page_warning_details";s:11:"description";s:43:"A page is not validated, so show a warning.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The warning";}}s:14:"assign_refresh";a:5:{s:8:"filename";s:17:"sources/site2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"Refresh to this URL (URLPATH or Tempcode URL)";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:10:"multiplier";s:7:"default";d:0;s:11:"default_raw";s:3:"0.0";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:61:"Take this many times longer than a 'standard Composr refresh'";s:11:"phpdoc_name";s:10:"multiplier";}}s:4:"name";s:14:"assign_refresh";s:11:"description";s:160:"Assign a page refresh to the specified URL.This is almost always used before calling the redirect_screen function. It assumes Composr will output a full screen.";s:5:"flags";a:0:{}}s:14:"smart_redirect";a:5:{s:8:"filename";s:17:"sources/site2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"Refresh to this URL (URLPATH or Tempcode URL)";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:14:"smart_redirect";s:11:"description";s:148:"Assign a redirect to the specified URL, with no visual component.If possible, use an HTTP header; but if output has already started, use a meta tag.";s:5:"flags";a:0:{}}s:11:"closed_site";a:5:{s:8:"filename";s:17:"sources/site2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"closed_site";s:11:"description";s:26:"Render the site as closed.";s:5:"flags";a:0:{}}s:14:"page_not_found";a:6:{s:8:"filename";s:17:"sources/site2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The codename of the page to load";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The zone the page is being loaded in";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:14:"page_not_found";s:11:"description";s:90:"Render that the page wasn't found. Show alternate likely candidates based on misspellings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"Message";}}s:29:"_load_comcode_page_not_cached";a:6:{s:8:"filename";s:17:"sources/site2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:93:"The relative (to Composr's base directory) path to the page (e.g. pages/comcode/EN/start.txt)";s:11:"phpdoc_name";s:6:"string";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The zone the page is being loaded from";s:11:"phpdoc_name";s:4:"zone";}i:2;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The codename of the page";s:11:"phpdoc_name";s:8:"codename";}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:26:"The file base to load from";s:11:"phpdoc_name";s:9:"file_base";}i:4;a:5:{s:4:"name";s:16:"comcode_page_row";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:82:"Row from database (holds submitter etc) (null: no row, originated first from disk)";s:11:"phpdoc_name";s:16:"comcode_page_row";}i:5;a:5:{s:4:"name";s:20:"new_comcode_page_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:61:"New row for database, used if necessary (holds submitter etc)";s:11:"phpdoc_name";s:20:"new_comcode_page_row";}i:6;a:7:{s:4:"name";s:14:"being_included";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the page is being included from another";s:11:"phpdoc_name";s:14:"being_included";}}s:4:"name";s:29:"_load_comcode_page_not_cached";s:11:"description";s:43:"Load Comcode page from disk, then cache it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:78:"A tuple: The page HTML (as Tempcode), New Comcode page row, Title, Raw Comcode";}}s:32:"apply_comcode_page_substitutions";a:5:{s:8:"filename";s:17:"sources/site2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"comcode";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:25:"The Comcode page contents";s:11:"phpdoc_name";s:7:"comcode";}}s:4:"name";s:32:"apply_comcode_page_substitutions";s:11:"description";s:56:"If any Comcode substitutions are configured, apply them.";s:5:"flags";a:0:{}}s:28:"_load_comcode_page_cache_off";a:6:{s:8:"filename";s:17:"sources/site2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:93:"The relative (to Composr's base directory) path to the page (e.g. pages/comcode/EN/start.txt)";s:11:"phpdoc_name";s:6:"string";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The zone the page is being loaded from";s:11:"phpdoc_name";s:4:"zone";}i:2;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The codename of the page";s:11:"phpdoc_name";s:8:"codename";}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:26:"The file base to load from";s:11:"phpdoc_name";s:9:"file_base";}i:4;a:5:{s:4:"name";s:20:"new_comcode_page_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:61:"New row for database, used if nesessary (holds submitter etc)";s:11:"phpdoc_name";s:20:"new_comcode_page_row";}i:5;a:7:{s:4:"name";s:14:"being_included";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether the page is being included from another";s:11:"phpdoc_name";s:14:"being_included";}}s:4:"name";s:28:"_load_comcode_page_cache_off";s:11:"description";s:28:"Load Comcode page from disk.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:78:"A tuple: The page HTML (as Tempcode), New Comcode page row, Title, Raw Comcode";}}s:16:"clean_html_title";a:6:{s:8:"filename";s:17:"sources/site2.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:6:"string";s:11:"description";s:93:"The relative (to Composr's base directory) path to the page (e.g. pages/comcode/EN/start.txt)";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:16:"clean_html_title";s:11:"description";s:110:"Turn an HTML title, which could be complex with images, into a nice simple string we can use in and ;.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:5:"Fixed";}}s:23:"adminzone_special_cases";a:5:{s:8:"filename";s:26:"sources/site_adminzone.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The page being loaded";s:11:"phpdoc_name";s:8:"codename";}}s:4:"name";s:23:"adminzone_special_cases";s:11:"description";s:75:"Special code to render Admin Zone Comcode pages with special significances.";s:5:"flags";a:0:{}}s:30:"adminzone_extended_breadcrumbs";a:6:{s:8:"filename";s:26:"sources/site_adminzone.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"adminzone_extended_breadcrumbs";s:11:"description";s:85:"Get extended breadcrumbs for the Admin Zone (called by breadcrumbs_get_default_stub).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Extra breadcrumbs";}}s:14:"load_html_page";a:6:{s:8:"filename";s:27:"sources/site_html_pages.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:4:"PATH";s:11:"description";s:63:"The relative (to Composrs base directory) path to the HTML page";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:9:"file_base";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:43:"The file base to load from (null: standard)";s:11:"phpdoc_name";s:9:"file_base";}i:2;a:7:{s:4:"name";s:3:"out";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?object";s:11:"description";s:73:"Semi-filled output template (null: definitely not doing output streaming)";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:14:"load_html_page";s:11:"description";s:149:"Get the contents of an HTML page.HTML isn't great... no dynamicness/reconfigurability at all.We prefer Comcode with [html]HTML goes here[/html] usage";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"The page";}}s:13:"init__sitemap";a:5:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__sitemap";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:21:"retrieve_sitemap_node";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:8:{i:0;a:7:{s:4:"name";s:9:"page_link";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:43:"The page-link we are finding (blank: root).";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:7:{s:4:"name";s:8:"callback";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:66:"Callback function to send discovered page-links to (null: return).";s:11:"phpdoc_name";s:8:"callback";}i:2;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:3;a:7:{s:4:"name";s:12:"child_cutoff";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:75:"Maximum number of children before we cut off all children (null: no limit).";s:11:"phpdoc_name";s:12:"child_cutoff";}i:4;a:7:{s:4:"name";s:17:"max_recurse_depth";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:54:"How deep to go from the Sitemap root (null: no limit).";s:11:"phpdoc_name";s:17:"max_recurse_depth";}i:5;a:7:{s:4:"name";s:7:"options";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:35:"A bitmask of SITEMAP_GEN_* options.";s:11:"phpdoc_name";s:7:"options";}i:6;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:100:"The zone we will consider ourselves to be operating in (needed due to transparent redirects feature)";s:11:"phpdoc_name";s:4:"zone";}i:7;a:7:{s:4:"name";s:11:"meta_gather";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:66:"A bitmask of SITEMAP_GATHER_* constants, of extra data to include.";s:11:"phpdoc_name";s:11:"meta_gather";}}s:4:"name";s:21:"retrieve_sitemap_node";s:11:"description";s:79:"Find details of a position in the Sitemap (shortcut into the object structure).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Node structure (null: working via callback / error).";}}s:19:"find_sitemap_object";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:64:"The page-link we are finding a Sitemap object for (blank: root).";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:19:"find_sitemap_object";s:11:"description";s:59:"Find the Sitemap object that serves a particular page-link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:96:"A pair: the Sitemap object, and whether you need to make a virtual call (null: cannot find one).";}}s:23:"get_page_grouping_links";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_page_grouping_links";s:11:"description";s:50:"Get all the details (links) of our page groupings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:129:"List of link tuples (one of the elements of which defines the page grouping -- see the page grouping hooks to see the structure).";}}s:22:"get_root_comcode_pages";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:2:{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:20:"The zone to get for.";s:11:"phpdoc_name";s:4:"zone";}i:1;a:7:{s:4:"name";s:12:"include_zone";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Use page-links in the mapping rather than just page names.";s:11:"phpdoc_name";s:12:"include_zone";}}s:4:"name";s:22:"get_root_comcode_pages";s:11:"description";s:65:"Get Comcode pages from a zone, that sit in the root of that zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:59:"Root Comcode pages, mapping page name to validation status.";}}s:21:"create_selection_list";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:14:"root_page_link";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The page-link we are starting from.";s:11:"phpdoc_name";s:14:"root_page_link";}i:1;a:7:{s:4:"name";s:10:"under_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:47:"Create from under this node, rather than at it.";s:11:"phpdoc_name";s:10:"under_only";}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:31:"Default selection (null: none).";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:16:"valid_node_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:66:"List of node types we will return/recurse-through (null: no limit)";s:11:"phpdoc_name";s:16:"valid_node_types";}i:4;a:7:{s:4:"name";s:30:"valid_selectable_content_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:66:"List of node types we will allow to be selectable (null: no limit)";s:11:"phpdoc_name";s:30:"valid_selectable_content_types";}i:5;a:7:{s:4:"name";s:25:"check_permissions_against";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:105:"Check permissions according to this bitmask of possibilities (requiring all in the bitmask to be matched)";s:11:"phpdoc_name";s:25:"check_permissions_against";}i:6;a:7:{s:4:"name";s:21:"check_permissions_for";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:65:"The member we are checking permissions for (null: current member)";s:11:"phpdoc_name";s:21:"check_permissions_for";}i:7;a:7:{s:4:"name";s:19:"consider_validation";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:138:"Whether to filter out non-validated entries if the $check_permissions_for user doesn't have the privilege to see them AND doesn't own them";s:11:"phpdoc_name";s:19:"consider_validation";}i:8;a:7:{s:4:"name";s:10:"only_owned";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:141:"The member we are only finding owned content of (null: no such limit); nodes leading up to owned content will be shown, but not as selectable";s:11:"phpdoc_name";s:10:"only_owned";}i:9;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:87:"Whether to produce selection IDs as a comma-separated list of all selectable sub-nodes.";s:11:"phpdoc_name";s:17:"use_compound_list";}i:10;a:7:{s:4:"name";s:11:"filter_func";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:69:"Filter function for limiting what rows will be included (null: none).";s:11:"phpdoc_name";s:11:"filter_func";}}s:4:"name";s:21:"create_selection_list";s:11:"description";s:56:"Get an HTML selection list for some part of the Sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:5:"List.";}}s:22:"_create_selection_list";a:6:{s:8:"filename";s:19:"sources/sitemap.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Output Tempcode.";s:11:"phpdoc_name";s:3:"out";}i:1;a:5:{s:4:"name";s:4:"node";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"Node being recursed.";s:11:"phpdoc_name";s:4:"node";}i:2;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:31:"Default selection (null: none).";s:11:"phpdoc_name";s:7:"default";}i:3;a:5:{s:4:"name";s:30:"valid_selectable_content_types";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:66:"List of node types we will allow to be selectable (null: no limit)";s:11:"phpdoc_name";s:30:"valid_selectable_content_types";}i:4;a:5:{s:4:"name";s:25:"check_permissions_against";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:105:"Check permissions according to this bitmask of possibilities (requiring all in the bitmask to be matched)";s:11:"phpdoc_name";s:25:"check_permissions_against";}i:5;a:5:{s:4:"name";s:21:"check_permissions_for";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:65:"The member we are checking permissions for (null: current member)";s:11:"phpdoc_name";s:21:"check_permissions_for";}i:6;a:5:{s:4:"name";s:10:"only_owned";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:141:"The member we are only finding owned content of (null: no such limit); nodes leading up to owned content will be shown, but not as selectable";s:11:"phpdoc_name";s:10:"only_owned";}i:7;a:5:{s:4:"name";s:17:"use_compound_list";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:87:"Whether to produce selection IDs as a comma-separated list of all selectable sub-nodes.";s:11:"phpdoc_name";s:17:"use_compound_list";}i:8;a:5:{s:4:"name";s:11:"filter_func";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:69:"Filter function for limiting what rows will be included (null: none).";s:11:"phpdoc_name";s:11:"filter_func";}i:9;a:7:{s:4:"name";s:5:"depth";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:16:"Recursion depth.";s:11:"phpdoc_name";s:5:"depth";}}s:4:"name";s:22:"_create_selection_list";s:11:"description";s:43:"Recurse function for create_selection_list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Compound list.";}}s:14:"sitemap_script";a:5:{s:8:"filename";s:24:"sources/sitemap_ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"sitemap_script";s:11:"description";s:45:"AJAX script for dynamically extended Sitemap.";s:5:"flags";a:0:{}}s:22:"sitemap_script_loading";a:5:{s:8:"filename";s:24:"sources/sitemap_ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"sitemap_script_loading";s:11:"description";s:54:"AJAX script for dynamically extended Sitemap: loading.";s:5:"flags";a:0:{}}s:20:"_sitemap_node_to_xml";a:5:{s:8:"filename";s:24:"sources/sitemap_ajax.php";s:10:"parameters";a:5:{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:28:"Global list of admin groups.";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:38:"Global map of usergroups (ID => name).";s:11:"phpdoc_name";s:6:"groups";}i:2;a:5:{s:4:"name";s:4:"node";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The Sitemap node.";s:11:"phpdoc_name";s:4:"node";}i:3;a:5:{s:4:"name";s:18:"permissions_needed";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we need selectable nodes to support some selectable permissions.";s:11:"phpdoc_name";s:18:"permissions_needed";}i:4;a:7:{s:4:"name";s:13:"recurse_level";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:29:"How deep in recursion we are.";s:11:"phpdoc_name";s:13:"recurse_level";}}s:4:"name";s:20:"_sitemap_node_to_xml";s:11:"description";s:50:"Convert a Sitemap node into an XML representation.";s:5:"flags";a:0:{}}s:25:"_get_view_access_for_node";a:6:{s:8:"filename";s:24:"sources/sitemap_ajax.php";s:10:"parameters";a:3:{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:28:"Global list of admin groups.";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:38:"Global map of usergroups (ID => name).";s:11:"phpdoc_name";s:6:"groups";}i:2;a:5:{s:4:"name";s:4:"node";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The sitemap node.";s:11:"phpdoc_name";s:4:"node";}}s:4:"name";s:25:"_get_view_access_for_node";s:11:"description";s:58:"Get a mapping of set access for a particular sitemap node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:77:"A map of set access (group => N/A) (null: no view permissions for this node).";}}s:24:"_get_privileges_for_node";a:6:{s:8:"filename";s:24:"sources/sitemap_ajax.php";s:10:"parameters";a:3:{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:28:"Global list of admin groups.";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:38:"Global map of usergroups (ID => name).";s:11:"phpdoc_name";s:6:"groups";}i:2;a:5:{s:4:"name";s:4:"node";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The sitemap node.";s:11:"phpdoc_name";s:4:"node";}}s:4:"name";s:24:"_get_privileges_for_node";s:11:"description";s:62:"Get a mapping of set privileges for a particular sitemap node.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:99:"A map of set privileges (group => (privileges => value)) (null: no view permissions for this node).";}}s:27:"_organise_loaded_privileges";a:6:{s:8:"filename";s:24:"sources/sitemap_ajax.php";s:10:"parameters";a:3:{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:28:"Global list of admin groups.";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:38:"Global map of usergroups (ID => name).";s:11:"phpdoc_name";s:6:"groups";}i:2;a:5:{s:4:"name";s:17:"_privilege_access";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"Privilege database rows";s:11:"phpdoc_name";s:17:"_privilege_access";}}s:4:"name";s:27:"_organise_loaded_privileges";s:11:"description";s:60:"Organise loaded privileges into a more searchable structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"A map of set privileges (group => (privileges => value)).";}}s:46:"_get_overridable_privileges_for_privilege_page";a:6:{s:8:"filename";s:24:"sources/sitemap_ajax.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"privilege_page";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:100:"The privilege page (null: interesting ones we want to allow specification on the root sitemap node).";s:11:"phpdoc_name";s:14:"privilege_page";}}s:4:"name";s:46:"_get_overridable_privileges_for_privilege_page";s:11:"description";s:62:"Get overridable privileges under a particular permission page.";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:21:"sitemap_script_saving";a:5:{s:8:"filename";s:24:"sources/sitemap_ajax.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"sitemap_script_saving";s:11:"description";s:53:"AJAX script for dynamically extended Sitemap: saving.";s:5:"flags";a:0:{}}s:17:"init__sitemap_xml";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__sitemap_xml";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"sitemap_xml_build";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"sitemap_xml_build";s:11:"description";s:70:"Top level function to (re)generate a Sitemap (xml file, Google-style).";s:5:"flags";a:0:{}}s:19:"rebuild_sitemap_set";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"set_number";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"Set number";s:11:"phpdoc_name";s:10:"set_number";}i:1;a:5:{s:4:"name";s:9:"last_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:28:"Last sitemap generation time";s:11:"phpdoc_name";s:9:"last_time";}}s:4:"name";s:19:"rebuild_sitemap_set";s:11:"description";s:28:"Write out a Sitemap XML set.";s:5:"flags";a:0:{}}s:21:"rebuild_sitemap_index";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"rebuild_sitemap_index";s:11:"description";s:30:"Write out a Sitemap XML index.";s:5:"flags";a:0:{}}s:16:"ping_sitemap_xml";a:6:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:1:{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:11:"Sitemap URL";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:16:"ping_sitemap_xml";s:11:"description";s:44:"Ping search engines with an updated sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"HTTP result output";}}s:25:"build_sitemap_cache_table";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"build_sitemap_cache_table";s:11:"description";s:96:"Our sitemap cache table may need bootstrapping for some reason.Normally we build it iteratively.";s:5:"flags";a:0:{}}s:19:"_sitemap_cache_node";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"node";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"The Sitemap node";s:11:"phpdoc_name";s:4:"node";}}s:4:"name";s:19:"_sitemap_cache_node";s:11:"description";s:51:"Callback for reference a Sitemap node in the cache.";s:5:"flags";a:0:{}}s:23:"notify_sitemap_node_add";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:5:{s:4:"name";s:8:"add_date";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:28:"The add time (null: unknown)";s:11:"phpdoc_name";s:8:"add_date";}i:2;a:5:{s:4:"name";s:9:"edit_date";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The edit time (null: same as add time)";s:11:"phpdoc_name";s:9:"edit_date";}i:3;a:5:{s:4:"name";s:8:"priority";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:53:"The sitemap priority, a SITEMAP_IMPORTANCE_* constant";s:11:"phpdoc_name";s:8:"priority";}i:4;a:6:{s:4:"name";s:11:"refreshfreq";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The refresh frequency";s:11:"phpdoc_name";s:11:"refreshfreq";s:3:"set";s:47:"always hourly daily weekly monthly yearly never";}i:5;a:5:{s:4:"name";s:12:"guest_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:209:"Whether guests may access this resource in terms of category permissions not zone/page permissions (if not set to 1 then it will not end up in an XML sitemap, but we'll keep tabs of it for other possible uses)";s:11:"phpdoc_name";s:12:"guest_access";}}s:4:"name";s:23:"notify_sitemap_node_add";s:11:"description";s:31:"Add a row to our sitemap cache.";s:5:"flags";a:0:{}}s:24:"notify_sitemap_node_edit";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}i:1;a:5:{s:4:"name";s:12:"guest_access";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:209:"Whether guests may access this resource in terms of category permissions not zone/page permissions (if not set to 1 then it will not end up in an XML sitemap, but we'll keep tabs of it for other possible uses)";s:11:"phpdoc_name";s:12:"guest_access";}}s:4:"name";s:24:"notify_sitemap_node_edit";s:11:"description";s:32:"Edit a row in our sitemap cache.";s:5:"flags";a:0:{}}s:26:"notify_sitemap_node_delete";a:5:{s:8:"filename";s:23:"sources/sitemap_xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:26:"notify_sitemap_node_delete";s:11:"description";s:190:"Mark a row from our sitemap cache as for deletion.It won't be immediately deleted, as we use this as a signal that the XML sitemap will need updating too.Updates are done in batch, via CRON.";s:5:"flags";a:0:{}}s:21:"cleanup_mobile_number";a:6:{s:8:"filename";s:15:"sources/sms.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"number";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The number";s:11:"phpdoc_name";s:6:"number";}}s:4:"name";s:21:"cleanup_mobile_number";s:11:"description";s:52:"Prepare a phone number for use with the SMS gateway.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Cleaned number";}}s:8:"sms_wrap";a:6:{s:8:"filename";s:15:"sources/sms.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The message";s:11:"phpdoc_name";s:7:"message";}i:1;a:5:{s:4:"name";s:6:"to_sms";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:42:"The member IDs of those receiving messages";s:11:"phpdoc_name";s:6:"to_sms";}}s:4:"name";s:8:"sms_wrap";s:11:"description";s:23:"Attempt to send an SMS.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:18:"How many were sent";}}s:19:"sms_callback_script";a:5:{s:8:"filename";s:15:"sources/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"sms_callback_script";s:11:"description";s:75:"Handle maintenance of SMS numbers (block numbers if they prove unreliable).";s:5:"flags";a:0:{}}s:14:"init__spelling";a:5:{s:8:"filename";s:20:"sources/spelling.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__spelling";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:10:"find_words";a:6:{s:8:"filename";s:20:"sources/spelling.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:66:"Text to scan for words in (should be plain text, not be HTML text)";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:10:"find_words";s:11:"description";s:32:"Find all the words in some text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of words";}}s:18:"find_spell_checker";a:6:{s:8:"filename";s:20:"sources/spelling.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"find_spell_checker";s:11:"description";s:30:"Find the active spell checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:26:"Spell checker (null: none)";}}s:20:"spell_correct_phrase";a:6:{s:8:"filename";s:20:"sources/spelling.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Input string";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:20:"spell_correct_phrase";s:11:"description";s:30:"Fix spellings in input string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Fixed input string";}}s:14:"run_spellcheck";a:6:{s:8:"filename";s:20:"sources/spelling.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:66:"Text to scan for words in (should be plain text, not be HTML text)";s:11:"phpdoc_name";s:4:"text";}i:1;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:8:"?ID_TEXT";s:11:"description";s:45:"Language to check in (null: current language)";s:11:"phpdoc_name";s:4:"lang";}i:2;a:7:{s:4:"name";s:22:"skip_known_words_in_db";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to avoid spellchecking known keywords etc";s:11:"phpdoc_name";s:22:"skip_known_words_in_db";}}s:4:"name";s:14:"run_spellcheck";s:11:"description";s:30:"Run a spellcheck on some text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A map of misspellings, lower case bad word => array of corrections";}}s:22:"add_spellchecker_words";a:5:{s:8:"filename";s:20:"sources/spelling.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:13:"List of words";s:11:"phpdoc_name";s:5:"words";}}s:4:"name";s:22:"add_spellchecker_words";s:11:"description";s:30:"Add words to the spellchecker.";s:5:"flags";a:0:{}}s:22:"_spellcheck_initialise";a:6:{s:8:"filename";s:20:"sources/spelling.php";s:10:"parameters";a:1:{i:0;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:8:"?ID_TEXT";s:11:"description";s:45:"Language to check in (null: current language)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:22:"_spellcheck_initialise";s:11:"description";s:33:"Initialise the spellcheck engine.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:26:"Spellchecker (null: error)";}}s:23:"sl_get_custom_file_base";a:6:{s:8:"filename";s:20:"sources/spelling.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"sl_get_custom_file_base";s:11:"description";s:38:"Find the path to where data is stored.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"Relative path";}}s:31:"static_cache__get_self_url_easy";a:6:{s:8:"filename";s:24:"sources/static_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"static_cache__get_self_url_easy";s:11:"description";s:158:"Get a well formed URL equivalent to the current URL. Reads direct from the environment and does no clever mapping at all. This function should rarely be used.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:7:"The URL";}}s:16:"can_static_cache";a:6:{s:8:"filename";s:24:"sources/static_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"can_static_cache";s:11:"description";s:36:"Find if we can use the static cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether we can";}}s:24:"static_cache_current_url";a:6:{s:8:"filename";s:24:"sources/static_cache.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"static_cache_current_url";s:11:"description";s:54:"Get the URL we are considering static caching against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:7:"The URL";}}s:12:"static_cache";a:5:{s:8:"filename";s:24:"sources/static_cache.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"mode";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"The mode";s:11:"phpdoc_name";s:4:"mode";}}s:4:"name";s:12:"static_cache";s:11:"description";s:49:"If possible dump the user to 100% static caching.";s:5:"flags";a:0:{}}s:17:"content_validated";a:6:{s:8:"filename";s:18:"sources/submit.php";s:10:"parameters";a:2:{i:0;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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:17:"content_validated";s:11:"description";s:39:"Find whether some content is validated.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether it is validated";}}s:35:"send_content_validated_notification";a:5:{s:8:"filename";s:18:"sources/submit.php";s:10:"parameters";a:2:{i:0;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:12:"Content type";s:11:"phpdoc_name";s:12:"content_type";}i:1;a:5:{s:4:"name";s:10:"content_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Content ID";s:11:"phpdoc_name";s:10:"content_id";}}s:4:"name";s:35:"send_content_validated_notification";s:11:"description";s:121:"Send a "your content has been validated" notification out to the submitter of some content. Only call if this is true ;).";s:5:"flags";a:0:{}}s:23:"send_validation_request";a:5:{s:8:"filename";s:18:"sources/submit.php";s:10:"parameters";a:6:{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:147:"The validation request will say one of this type has been submitted. By convention it is the language string ID of what was done, e.g. ADD_DOWNLOAD";s:11:"phpdoc_name";s:4:"type";}i:1;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:36:"The table saved into (null: unknown)";s:11:"phpdoc_name";s:5:"table";}i:2;a:5:{s:4:"name";s:14:"non_integer_id";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the ID field is not an integer";s:11:"phpdoc_name";s:14:"non_integer_id";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:58:"The validation request will say this ID has been submitted";s:11:"phpdoc_name";s:2:"id";}i:4;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:44:"The validation request will link to this URL";s:11:"phpdoc_name";s:3:"url";}i:5;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:50:"Member doing the submitting (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:23:"send_validation_request";s:11:"description";s:72:"Send (by e-mail) a validation request for a submitted item to the admin.";s:5:"flags";a:0:{}}s:18:"give_submit_points";a:6:{s:8:"filename";s:18:"sources/submit.php";s:10:"parameters";a:2:{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:115:"One of this type has been submitted. By convention it is the language string ID of what was done, e.g. ADD_DOWNLOAD";s:11:"phpdoc_name";s:4:"type";}i:1;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:63:"The member to give the points to (null: give to current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:18:"give_submit_points";s:11:"description";s:88:"Give points to a member for submitting something, then returns the XHTML page to say so.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:77:"A message about the member being given these submit points (null: no message)";}}s:13:"wrap_probe_ip";a:6:{s:8:"filename";s:18:"sources/submit.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:23:"The IP address to probe";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:13:"wrap_probe_ip";s:11:"description";s:145:"Find a member from their IP address. Unlike plain $GLOBALS['FORUM_DRIVER']->probe_ip, it has the benefit of looking in the actionlogs table also.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The members found";}}s:6:"ban_ip";a:5:{s:8:"filename";s:18:"sources/submit.php";s:10:"parameters";a:2:{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 IP address to ban";s:11:"phpdoc_name";s:2:"ip";}i:1;a:7:{s:4:"name";s:7:"descrip";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:"Explanation for ban";s:11:"phpdoc_name";s:7:"descrip";}}s:4:"name";s:6:"ban_ip";s:11:"description";s:29:"Ban the specified IP address.";s:5:"flags";a:0:{}}s:8:"unban_ip";a:5:{s:8:"filename";s:18:"sources/submit.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:23:"The IP address to unban";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"unban_ip";s:11:"description";s:31:"Unban the specified IP address.";s:5:"flags";a:0:{}}s:9:"init__svg";a:5:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"init__svg";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:13:"_draw_segment";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"colour";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"The hexadecimal-formatted colour for the shape";s:11:"phpdoc_name";s:6:"colour";}i:1;a:5:{s:4:"name";s:5:"angle";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The angle of the segment";s:11:"phpdoc_name";s:5:"angle";}i:2;a:5:{s:4:"name";s:6:"radius";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"The radius of the segment";s:11:"phpdoc_name";s:6:"radius";}i:3;a:5:{s:4:"name";s:7:"start_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The X position of the start vertex";s:11:"phpdoc_name";s:7:"start_x";}i:4;a:5:{s:4:"name";s:7:"start_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The Y position of the start vertex";s:11:"phpdoc_name";s:7:"start_y";}i:5;a:5:{s:4:"name";s:5:"end_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"The X position of the end vertex";s:11:"phpdoc_name";s:5:"end_x";}i:6;a:5:{s:4:"name";s:5:"end_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"The Y position of the end vertex";s:11:"phpdoc_name";s:5:"end_y";}}s:4:"name";s:13:"_draw_segment";s:11:"description";s:106:"Get the SVG markup for a segment of a circle. It is designed to be used in the construction of a pie chart";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:40:"The SVG markup for the described segment";}}s:9:"_draw_key";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"An array of the data to be keyed up";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:12:"start_colour";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"The starting colour for the key";s:11:"phpdoc_name";s:12:"start_colour";}i:2;a:5:{s:4:"name";s:7:"start_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The starting X position";s:11:"phpdoc_name";s:7:"start_x";}i:3;a:5:{s:4:"name";s:7:"start_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The starting Y position";s:11:"phpdoc_name";s:7:"start_y";}i:4;a:7:{s:4:"name";s:5:"units";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:18:"The units (e.g. %)";s:11:"phpdoc_name";s:5:"units";}}s:4:"name";s:9:"_draw_key";s:11:"description";s:87:"Get the SVG markup for a key for a chart, such as a pie chart, using the specified data";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:36:"The SVG markup for the described key";}}s:16:"_get_next_colour";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"current_colour";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:47:"The hexadecimal-format colour to be incremented";s:11:"phpdoc_name";s:14:"current_colour";}}s:4:"name";s:16:"_get_next_colour";s:11:"description";s:192:"Get the next hexadecimal colour from the specified one, where each of the Red, Green or Blue columns can either be 00, 33, 66 or 99, to provide a viewable contrast between two adjacent colours";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:34:"The incremented hexadecimal colour";}}s:10:"_start_svg";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_start_svg";s:11:"description";s:51:"Get the markup required to start a new SVG document";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The markup";}}s:11:"_finish_svg";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:4:"plot";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:31:"The plot markup to insert first";s:11:"phpdoc_name";s:4:"plot";}}s:4:"name";s:11:"_finish_svg";s:11:"description";s:49:"Get the markup required to finish an SVG document";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The markup";}}s:15:"_filter_svg_css";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"plot";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:7:"The SVG";s:11:"phpdoc_name";s:4:"plot";}}s:4:"name";s:15:"_filter_svg_css";s:11:"description";s:98:"Take the SVG and make all the styles inline. Disabled as not needed for native SVG implementations";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"... made to have inline styles";}}s:10:"_draw_axes";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"max_y";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:15:"Maximum Y value";s:11:"phpdoc_name";s:5:"max_y";}i:1;a:5:{s:4:"name";s:7:"y_scale";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:7:"Y scale";s:11:"phpdoc_name";s:7:"y_scale";}i:2;a:7:{s:4:"name";s:7:"x_label";s:7:"default";s:5:"Xaxis";s:11:"default_raw";s:7:"'Xaxis'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"X axis label";s:11:"phpdoc_name";s:7:"x_label";}i:3;a:7:{s:4:"name";s:7:"y_label";s:7:"default";s:5:"Yaxis";s:11:"default_raw";s:7:"'Yaxis'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Y axis label";s:11:"phpdoc_name";s:7:"y_label";}}s:4:"name";s:10:"_draw_axes";s:11:"description";s:42:"Get the markup for a standard pair of axes";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The markup";}}s:13:"_draw_average";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"average";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:13:"Average value";s:11:"phpdoc_name";s:7:"average";}i:1;a:5:{s:4:"name";s:7:"y_scale";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:7:"Y scale";s:11:"phpdoc_name";s:7:"y_scale";}}s:4:"name";s:13:"_draw_average";s:11:"description";s:34:"Get the markup for an average line";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The markup";}}s:16:"create_bar_chart";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:52:"The data to be used in the creation of the bar chart";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:7:"x_label";s:7:"default";s:5:"Xaxis";s:11:"default_raw";s:7:"'Xaxis'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The X axis label";s:11:"phpdoc_name";s:7:"x_label";}i:2;a:7:{s:4:"name";s:7:"y_label";s:7:"default";s:5:"Yaxis";s:11:"default_raw";s:7:"'Yaxis'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The Y axis label";s:11:"phpdoc_name";s:7:"y_label";}i:3;a:7:{s:4:"name";s:7:"x_units";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:22:"The X axis units label";s:11:"phpdoc_name";s:7:"x_units";}i:4;a:7:{s:4:"name";s:7:"y_units";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:22:"The Y axis units label";s:11:"phpdoc_name";s:7:"y_units";}}s:4:"name";s:16:"create_bar_chart";s:11:"description";s:68:"Create a bar chart from the specified data and return the SVG markup";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:42:"The SVG markup for the described bar chart";}}s:20:"create_scatter_graph";a:6:{s:8:"filename";s:15:"sources/svg.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"The data to be used in the creation of the scatter graph";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:7:"x_label";s:7:"default";s:5:"XAxis";s:11:"default_raw";s:7:"'XAxis'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The X axis label";s:11:"phpdoc_name";s:7:"x_label";}i:2;a:7:{s:4:"name";s:7:"y_label";s:7:"default";s:5:"YAxis";s:11:"default_raw";s:7:"'YAxis'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The Y axis label";s:11:"phpdoc_name";s:7:"y_label";}i:3;a:7:{s:4:"name";s:7:"x_units";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:22:"The X axis units label";s:11:"phpdoc_name";s:7:"x_units";}i:4;a:7:{s:4:"name";s:7:"y_units";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:22:"The Y axis units label";s:11:"phpdoc_name";s:7:"y_units";}}s:4:"name";s:20:"create_scatter_graph";s:11:"description";s:72:"Create a scatter graph using the data provided and return the SVG markup";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:46:"The SVG markup for the described scatter graph";}}s:16:"create_pie_chart";a:6:{s:8:"filename";s:15:"sources/svg.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:5:"array";s:11:"description";s:52:"The data to be used in the creation of the pie chart";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:16:"create_pie_chart";s:11:"description";s:66:"Draw a pie chart with the specified data and return the SVG markup";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:42:"The SVG markup for the described pie chart";}}s:13:"init__symbols";a:5:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__symbols";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:3:"ecv";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:61:"The type of symbol this is (TC_SYMBOL, TC_LANGUAGE_REFERENCE)";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:3:"0 2";}i:3;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 symbol";s:11:"phpdoc_name";s:4:"name";}i:4;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:3:"ecv";s:11:"description";s:61:"Evaluate a conventional Tempcode construct, handling escaping";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:41:"The result. Either Tempcode, or a string.";}}s:13:"ecv_PAGE_LINK";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_PAGE_LINK";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_SET";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_SET";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_GET";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_GET";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:26:"ecv_HAS_ACTUAL_PAGE_ACCESS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:26:"ecv_HAS_ACTUAL_PAGE_ACCESS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv_TERNARY";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv_TERNARY";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_IMG";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_IMG";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv_IMG_MTIME";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_IMG_MTIME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv_IMG_WIDTH";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_IMG_WIDTH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv_IMG_HEIGHT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv_IMG_HEIGHT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:4:"ecv_";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:4:"ecv_";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv_REFRESH";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv_REFRESH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv_FEEDS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv_FEEDS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_METADATA";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_METADATA";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_KEEP";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_KEEP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"keep_symbol";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:181:"Parameters passed to the symbol (0=whether this starts off the query string, 1=force session append even if it's also available a session cookie e.g. when put into download manager)";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"keep_symbol";s:11:"description";s:51:"String to tack onto URL to keep 'keep_' parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv_BROWSER";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv_BROWSER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv_REQUIRE_JAVASCRIPT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv_REQUIRE_JAVASCRIPT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:30:"ecv_FACILITATE_AJAX_BLOCK_CALL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:30:"ecv_FACILITATE_AJAX_BLOCK_CALL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv__GET";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv__GET";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv_STRIP_TAGS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv_STRIP_TAGS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_TRUNCATE_LEFT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_TRUNCATE_LEFT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv_TRUNCATE_SPREAD";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv_TRUNCATE_SPREAD";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"symbol_truncator";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:191:"Parameters passed to the symbol (0=text, 1=amount, 2=tooltip?, 3=is_html?, 4=use as grammatical length rather than HTML byte length, 5=fractional-deviation-tolerance for grammar-preservation)";s:11:"phpdoc_name";s:5:"param";}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:28:"The type of truncation to do";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:17:"left right spread";}i:2;a:7:{s:4:"name";s:20:"tooltip_if_truncated";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:78:"Tooltip to add on, but only if we end up creating our own tooltip (null: none)";s:11:"phpdoc_name";s:20:"tooltip_if_truncated";}}s:4:"name";s:16:"symbol_truncator";s:11:"description";s:49:"Handle truncation symbols in all their complexity";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv_PARAGRAPH";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_PARAGRAPH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv_COMMA_LIST_GET";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv_COMMA_LIST_GET";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_IS_EMPTY";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_IS_EMPTY";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv_IS_NON_EMPTY";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv_IS_NON_EMPTY";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv_CDN_FILTER";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv_CDN_FILTER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv_LOAD_PANEL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv_LOAD_PANEL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv_JS_ON";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv_JS_ON";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_ZONE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_ZONE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_PAGE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_PAGE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_HEADER_TEXT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_HEADER_TEXT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_CANONICAL_URL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_CANONICAL_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_SHOW_HEADER";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_SHOW_HEADER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_SHOW_FOOTER";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_SHOW_FOOTER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_WIDE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_WIDE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv_WIDE_HIGH";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_WIDE_HIGH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_LOGO_URL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_LOGO_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:25:"ecv_HELPER_PANEL_TUTORIAL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:25:"ecv_HELPER_PANEL_TUTORIAL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv_HELPER_PANEL_TEXT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv_HELPER_PANEL_TEXT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv_MESSAGES_TOP";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv_MESSAGES_TOP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv_MESSAGES_BOTTOM";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv_MESSAGES_BOTTOM";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_LATE_MESSAGES";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_LATE_MESSAGES";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_BREADCRUMBS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_BREADCRUMBS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv_HAS_SU";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv_HAS_SU";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_STAFF_ACTIONS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_STAFF_ACTIONS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_TRIM";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_TRIM";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"cms_trim";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Input text.";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:8:"try_hard";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:80:"Whether to keep doing it, while it changes (if complex mixtures are on the end).";s:11:"phpdoc_name";s:8:"try_hard";}}s:4:"name";s:8:"cms_trim";s:11:"description";s:58:"Trim some text, supporting removing HTML white-space also.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The result text.";}}s:13:"ecv_CPF_VALUE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_CPF_VALUE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv_BANNER";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv_BANNER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv_AVATAR";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv_AVATAR";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_IS_GUEST";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_IS_GUEST";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv_MEMBER";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv_MEMBER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_REQUIRE_CSS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_REQUIRE_CSS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv_IS_HTTPAUTH_LOGIN";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv_IS_HTTPAUTH_LOGIN";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv_MEMBER_PROFILE_URL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv_MEMBER_PROFILE_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_USERNAME";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_USERNAME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv_DISPLAYED_USERNAME";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv_DISPLAYED_USERNAME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv_CYCLE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv_CYCLE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv_THUMBNAIL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_THUMBNAIL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_IS_IN_GROUP";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_IS_IN_GROUP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_IS_STAFF";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_IS_STAFF";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_IS_ADMIN";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_IS_ADMIN";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv_PHOTO";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv_PHOTO";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv_CNS_RANK_IMAGE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv_CNS_RANK_IMAGE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv_URL_FOR_GET_FORM";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv_URL_FOR_GET_FORM";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:24:"ecv_HIDDENS_FOR_GET_FORM";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:24:"ecv_HIDDENS_FOR_GET_FORM";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:25:"ecv_NOTIFICATIONS_ENABLED";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:25:"ecv_NOTIFICATIONS_ENABLED";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:27:"ecv_NOTIFICATIONS_AVAILABLE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:27:"ecv_NOTIFICATIONS_AVAILABLE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv_MAKE_RELATIVE_DATE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv_MAKE_RELATIVE_DATE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv_LOAD_PAGE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_LOAD_PAGE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv_RUNNING_SCRIPT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv_RUNNING_SCRIPT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv_MATCH_KEY_MATCH";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv_MATCH_KEY_MATCH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv_BLOCK";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv_BLOCK";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv_FORCE_PREVIEWS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv_FORCE_PREVIEWS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_PREVIEW_URL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_PREVIEW_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv_HIDE_HELP_PANEL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv_HIDE_HELP_PANEL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv_FIND_SCRIPT_NOHTTP";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv_FIND_SCRIPT_NOHTTP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_FIND_SCRIPT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_FIND_SCRIPT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv_CSS_TEMPCODE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv_CSS_TEMPCODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_JS_TEMPCODE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_JS_TEMPCODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv_PAGE_TITLE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv_PAGE_TITLE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv_EXTRA_HEAD";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv_EXTRA_HEAD";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv_EXTRA_FOOT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv_EXTRA_FOOT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_RAND";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_RAND";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_SET_RAND";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_SET_RAND";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv_MEMBER_EMAIL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv_MEMBER_EMAIL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_HAS_PRIVILEGE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_HAS_PRIVILEGE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv_HAS_ZONE_ACCESS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv_HAS_ZONE_ACCESS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:25:"ecv_HAS_DELETE_PERMISSION";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:25:"ecv_HAS_DELETE_PERMISSION";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_DATE_AND_TIME";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_DATE_AND_TIME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_DATE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_DATE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_TIME";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_TIME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv_FROM_TIMESTAMP";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv_FROM_TIMESTAMP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_DEV_MODE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_DEV_MODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv_BROWSER_MATCHES";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv_BROWSER_MATCHES";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_INIT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_INIT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_INC";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_INC";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv_PREG_REPLACE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv_PREG_REPLACE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_MAX";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_MAX";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_MIN";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_MIN";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv_DIV_FLOAT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv_DIV_FLOAT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_DIV";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_DIV";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv_LCASE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv_LCASE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv__POST";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv__POST";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv_REPLACE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv_REPLACE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv_IN_STR";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv_IN_STR";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv_SUBSTR_COUNT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv_SUBSTR_COUNT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv_SUBSTR";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv_SUBSTR";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:24:"ecv_ALTERNATOR_TRUNCATED";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:24:"ecv_ALTERNATOR_TRUNCATED";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:6:"ecv_EQ";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:6:"ecv_EQ";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_NEQ";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_NEQ";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_NOT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_NOT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:6:"ecv_OR";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:6:"ecv_OR";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_AND";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_AND";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv_NOR";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv_NOR";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv_NAND";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv_NAND";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:6:"ecv_GT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:6:"ecv_GT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:28:"ecv_INSERT_SPAMMER_BLACKHOLE";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:28:"ecv_INSERT_SPAMMER_BLACKHOLE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_HONEYPOT_LINK";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_HONEYPOT_LINK";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_COMMENT_COUNT";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_COMMENT_COUNT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv_SELF_URL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv_SELF_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv_REVIEW_STATUS";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv_REVIEW_STATUS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv__POSTED";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv__POSTED";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv_EXTEND_URL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv_EXTEND_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:31:"ecv_ENSURE_PROTOCOL_SUITABILITY";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:31:"ecv_ENSURE_PROTOCOL_SUITABILITY";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv_LOGIN_LABEL";a:6:{s:8:"filename";s:19:"sources/symbols.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv_LOGIN_LABEL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv2_MAKE_URL_ABSOLUTE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv2_MAKE_URL_ABSOLUTE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv2_LANG";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv2_LANG";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv2_THEME";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv2_THEME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_VERSION_NUMBER";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_VERSION_NUMBER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_SITE_NAME";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_SITE_NAME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv2_CHARSET";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv2_CHARSET";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_ADDON_INSTALLED";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_ADDON_INSTALLED";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_CONFIG_OPTION";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_CONFIG_OPTION";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv2_VALUE_OPTION";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_VALUE_OPTION";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_MOBILE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_MOBILE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_COPYRIGHT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_COPYRIGHT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_BRAND_NAME";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_BRAND_NAME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_BRAND_BASE_URL";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_BRAND_BASE_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_CUSTOM_BASE_URL";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_CUSTOM_BASE_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_BASE_URL_NOHTTP";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_BASE_URL_NOHTTP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:27:"ecv2_CUSTOM_BASE_URL_NOHTTP";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:27:"ecv2_CUSTOM_BASE_URL_NOHTTP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_BASE_URL";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_BASE_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv2_CNS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv2_CNS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv2_VALID_FILE_TYPES";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv2_VALID_FILE_TYPES";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv2_COOKIE_PATH";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv2_COOKIE_PATH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_COOKIE_DOMAIN";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_COOKIE_DOMAIN";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:24:"ecv2_SESSION_COOKIE_NAME";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:24:"ecv2_SESSION_COOKIE_NAME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_MAILTO";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_MAILTO";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv2_INLINE_STATS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_INLINE_STATS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_IMG_INLINE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_IMG_INLINE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv2_ADD";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv2_ADD";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_ALREADY_RATED";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_ALREADY_RATED";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_ANCHOR";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_ANCHOR";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv2_AT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv2_AT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:25:"ecv2_ATTACHMENT_DOWNLOADS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:25:"ecv2_ATTACHMENT_DOWNLOADS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv2_AVAILABLE_POINTS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv2_AVAILABLE_POINTS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_AWARD_ID";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_AWARD_ID";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_BROWSER_UA";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_BROWSER_UA";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_CAN_SPELLCHECK";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_CAN_SPELLCHECK";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_URLDECODE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_URLDECODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_CLEAN_FILE_SIZE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_CLEAN_FILE_SIZE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv2_COMCODE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv2_COMCODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:32:"ecv2_COMMA_LIST_FROM_BREADCRUMBS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:32:"ecv2_COMMA_LIST_FROM_BREADCRUMBS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv2_COMMA_LIST_NICIFY";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv2_COMMA_LIST_NICIFY";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_COMMA_LIST_POP";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_COMMA_LIST_POP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_COMMA_LIST_PUSH";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_COMMA_LIST_PUSH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:23:"ecv2_COMMA_LIST_REVERSE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:23:"ecv2_COMMA_LIST_REVERSE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_COMMA_LIST_SET";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_COMMA_LIST_SET";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv2_COMMA_LIST_SHIFT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv2_COMMA_LIST_SHIFT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:23:"ecv2_COMMA_LIST_UNSHIFT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:23:"ecv2_COMMA_LIST_UNSHIFT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_COPPA_ON";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_COPPA_ON";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:25:"ecv2_CSS_DIMENSION_REDUCE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:25:"ecv2_CSS_DIMENSION_REDUCE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:24:"ecv2_CURRENTLY_INVISIBLE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:24:"ecv2_CURRENTLY_INVISIBLE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv2_DEC";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv2_DEC";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_DIV_CEIL";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_DIV_CEIL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_DOMAIN";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_DOMAIN";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_ENTITY_DECODE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_ENTITY_DECODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_ESCAPE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_ESCAPE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv2_FIND_GUID_VIA_ID";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv2_FIND_GUID_VIA_ID";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv2_FIND_ID_VIA_GUID";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv2_FIND_ID_VIA_GUID";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv2_FIND_ID_VIA_LABEL";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv2_FIND_ID_VIA_LABEL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:37:"ecv2_FIND_ID_VIA_COMMANDR_FS_FILENAME";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:37:"ecv2_FIND_ID_VIA_COMMANDR_FS_FILENAME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:28:"ecv2_FIND_ID_VIA_URL_MONIKER";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:28:"ecv2_FIND_ID_VIA_URL_MONIKER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv2_FIND_LABEL_VIA_ID";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv2_FIND_LABEL_VIA_ID";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:37:"ecv2_FIND_COMMANDR_FS_FILENAME_VIA_ID";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:37:"ecv2_FIND_COMMANDR_FS_FILENAME_VIA_ID";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:28:"ecv2_FIND_URL_MONIKER_VIA_ID";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:28:"ecv2_FIND_URL_MONIKER_VIA_ID";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv2_FLOAT_FORMAT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_FLOAT_FORMAT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_FORUM_BASE_URL";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_FORUM_BASE_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_FORUM_CONTEXT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_FORUM_CONTEXT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_GEOLOCATE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_GEOLOCATE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_GROUP_ID";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_GROUP_ID";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_GROUP_NAME";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_GROUP_NAME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:24:"ecv2_HAS_CATEGORY_ACCESS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:24:"ecv2_HAS_CATEGORY_ACCESS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:24:"ecv2_HAS_EDIT_PERMISSION";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:24:"ecv2_HAS_EDIT_PERMISSION";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:33:"ecv2_SUPPORTS_FRACTIONAL_EDITABLE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:33:"ecv2_SUPPORTS_FRACTIONAL_EDITABLE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_HAS_FORUM";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_HAS_FORUM";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_HAS_PAGE_ACCESS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_HAS_PAGE_ACCESS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:26:"ecv2_HAS_SUBMIT_PERMISSION";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:26:"ecv2_HAS_SUBMIT_PERMISSION";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv2_HTTP_STATUS_CODE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv2_HTTP_STATUS_CODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv2_ISSET";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv2_ISSET";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv2_IS_A_COOKIE_LOGIN";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv2_IS_A_COOKIE_LOGIN";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_IS_FRIEND";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_IS_FRIEND";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:27:"ecv2_IS_VIRTUALISED_REQUEST";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:27:"ecv2_IS_VIRTUALISED_REQUEST";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_LAST_VISIT_TIME";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_LAST_VISIT_TIME";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_LENGTH";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_LENGTH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv2_LT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv2_LT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_MEMBER_OVERRIDE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_MEMBER_OVERRIDE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv2_MOD";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv2_MOD";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:9:"ecv2_MULT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv2_MULT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_NEGATE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_NEGATE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv2_NO_SAFE_MODE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_NO_SAFE_MODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_STRIP_HTML";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_STRIP_HTML";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_NUMBER_FORMAT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_NUMBER_FORMAT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_NUM_NEW_POSTS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_NUM_NEW_POSTS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_NUM_NEW_TOPICS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_NUM_NEW_TOPICS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_RATING";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_RATING";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv2_NUM_RATINGS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv2_NUM_RATINGS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_OBFUSCATE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_OBFUSCATE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_CNS_MEMBER_HTML";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_CNS_MEMBER_HTML";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:7:"ecv2_OS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv2_OS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_PAD_LEFT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_PAD_LEFT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_PAD_RIGHT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_PAD_RIGHT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv2_POINTS_USED";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv2_POINTS_USED";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_PREG_MATCH";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_PREG_MATCH";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv2_QUERY_STRING";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_QUERY_STRING";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv2_REM";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv2_REM";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv2_RESET_CYCLE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv2_RESET_CYCLE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv2_ROUND";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv2_ROUND";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_SECONDS_PERIOD";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_SECONDS_PERIOD";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv2_SESSION";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv2_SESSION";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_SESSION_HASHED";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_SESSION_HASHED";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_SET_TITLE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_SET_TITLE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:14:"ecv2_SHOW_DOCS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_SHOW_DOCS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_SITE_SCOPE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_SITE_SCOPE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv2_SSW";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv2_SSW";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_STAFF_ADDRESS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_STAFF_ADDRESS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:23:"ecv2_STAFF_ADDRESS_PURE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:23:"ecv2_STAFF_ADDRESS_PURE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:11:"ecv2_STRPOS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:11:"ecv2_STRPOS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_SUBTRACT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_SUBTRACT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_TEMPCODE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_TEMPCODE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_TIMEZONE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_TIMEZONE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:30:"ecv2_MATURITY_FILTER_REQUESTED";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:30:"ecv2_MATURITY_FILTER_REQUESTED";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv2_TIME_PERIOD";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv2_TIME_PERIOD";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv2_TOTAL_POINTS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_TOTAL_POINTS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv2_TO_TIMESTAMP";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_TO_TIMESTAMP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_TRUNCATE_EXPAND";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_TRUNCATE_EXPAND";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_TRUNCATE_RIGHT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_TRUNCATE_RIGHT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:17:"ecv2_TUTORIAL_URL";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_TUTORIAL_URL";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv2_UCASE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv2_UCASE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_USER_AGENT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_USER_AGENT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:15:"ecv2_IP_ADDRESS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:15:"ecv2_IP_ADDRESS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:12:"ecv2_VERSION";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:12:"ecv2_VERSION";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv2_VIEWS";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv2_VIEWS";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:10:"ecv2_WCASE";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv2_WCASE";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:13:"ecv2_WORDWRAP";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_WORDWRAP";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"ecv2_XOR";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:8:"ecv2_XOR";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:21:"ecv2_ZONE_HEADER_TEXT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:21:"ecv2_ZONE_HEADER_TEXT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:23:"ecv2_THEME_WIZARD_COLOR";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:23:"ecv2_THEME_WIZARD_COLOR";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:19:"ecv2_SELF_PAGE_LINK";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:19:"ecv2_SELF_PAGE_LINK";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:22:"ecv2_SET_TUTORIAL_LINK";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:22:"ecv2_SET_TUTORIAL_LINK";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:20:"ecv2_DISPLAY_CONCEPT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:20:"ecv2_DISPLAY_CONCEPT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:16:"ecv2_CSS_INHERIT";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:16:"ecv2_CSS_INHERIT";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:24:"ecv2_RECONTEXTUALISE_IDS";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:24:"ecv2_RECONTEXTUALISE_IDS";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:7:"ecv2_IF";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:7:"ecv2_IF";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:13:"ecv2_IF_EMPTY";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_IF_EMPTY";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:17:"ecv2_IF_NON_EMPTY";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:17:"ecv2_IF_NON_EMPTY";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:14:"ecv2_IF_PASSED";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:14:"ecv2_IF_PASSED";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:18:"ecv2_IF_NON_PASSED";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_IF_NON_PASSED";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:23:"ecv2_IF_PASSED_AND_TRUE";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:23:"ecv2_IF_PASSED_AND_TRUE";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:27:"ecv2_IF_NON_PASSED_OR_FALSE";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:27:"ecv2_IF_NON_PASSED_OR_FALSE";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:10:"ecv2_WHILE";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:10:"ecv2_WHILE";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:9:"ecv2_LOOP";a:5:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:20:"Value to write into.";s:11:"phpdoc_name";s:5:"value";}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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:3;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:9:"ecv2_LOOP";s:11:"description";s:41:"Evaluate a particular Tempcode directive.";s:5:"flags";a:0:{}}s:13:"ecv2_TAPATALK";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"ecv2_TAPATALK";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_AUTHOR_MEMBER";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_AUTHOR_MEMBER";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:18:"ecv2_DECIMAL_POINT";a:6:{s:8:"filename";s:20:"sources/symbols2.php";s:10:"parameters";a:3:{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:82:"The language to evaluate this symbol in (some symbols refer to language elements).";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"Array of escaping operations.";s:11:"phpdoc_name";s:7:"escaped";}i:2;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:262:"Parameters to the symbol. For all but directive it is an array of strings. For directives it is an array of Tempcode objects. Actually there may be template-style parameters in here, as an influence of singular_bind and these may be Tempcode, but we ignore them.";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:18:"ecv2_DECIMAL_POINT";s:11:"description";s:38:"Evaluate a particular Tempcode symbol.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:8:"tar_open";a:6:{s:8:"filename";s:15:"sources/tar.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:5:"?PATH";s:11:"description";s:64:"The path to the TAR archive (null: write out directly to stdout)";s:11:"phpdoc_name";s:4:"path";}i:1;a:6:{s:4:"name";s:4:"mode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:52:"The mode to open the TAR archive (rb=read, wb=write)";s:11:"phpdoc_name";s:4:"mode";s:3:"set";s:9:"rb wb w+b";}}s:4:"name";s:8:"tar_open";s:11:"description";s:47:"Open up a TAR archive, and return the resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The TAR file handle";}}s:17:"tar_get_directory";a:6:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"resource";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"The TAR file handle";s:11:"phpdoc_name";s:8:"resource";}i:1;a:7:{s:4:"name";s:15:"tolerate_errors";s:7:"default";s:13:"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 to tolerate errors (returns null if error)";s:11:"phpdoc_name";s:15:"tolerate_errors";}}s:4:"name";s:17:"tar_get_directory";s:11:"description";s:114:"Return the root directory from the specified TAR file. Note that there are folders in here, and they will end '/'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:105:"A list of maps that stores 'path', 'mode', 'size' and 'mtime', for each file in the archive (null: error)";}}s:27:"file_size_to_tar_block_size";a:6:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"size";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:60:"The file size of a file that would be inside the TAR archive";s:11:"phpdoc_name";s:4:"size";}}s:4:"name";s:27:"file_size_to_tar_block_size";s:11:"description";s:74:"Return the output from the conversion between filesize and TAR block size.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:47:"The block size TAR would use to store this file";}}s:26:"tar_add_folder_incremental";a:6:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"resource";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"The TAR file handle";s:11:"phpdoc_name";s:8:"resource";}i:1;a:5:{s:4:"name";s:7:"logfile";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:42:"The logfile to write to (null: no logging)";s:11:"phpdoc_name";s:7:"logfile";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:34:"The full path to the folder to add";s:11:"phpdoc_name";s:4:"path";}i:3;a:5:{s:4:"name";s:9:"threshold";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:18:"The threshold time";s:11:"phpdoc_name";s:9:"threshold";}i:4;a:5:{s:4:"name";s:8:"max_size";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:45:"The maximum file size to add (null: no limit)";s:11:"phpdoc_name";s:8:"max_size";}i:5;a:7:{s:4:"name";s:7:"subpath";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:172:"The subpath relative to the path (should be left as the default '', as this is used for the recursion to distinguish the adding base path from where it's currently looking)";s:11:"phpdoc_name";s:7:"subpath";}i:6;a:7:{s:4:"name";s:9:"all_files";s:7:"default";s:13:"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 not skip "special files" (ones not normally archive)";s:11:"phpdoc_name";s:9:"all_files";}}s:4:"name";s:26:"tar_add_folder_incremental";s:11:"description";s:221:"Add a folder to the TAR archive, however only store files modifed after a threshold time. It is incremental (incremental backup), by comparing against a threshold before adding a file (threshold being time of last backup)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:94:"A list of maps that stores 'path', 'mode' and 'size', for each newly added file in the archive";}}s:14:"tar_add_folder";a:5:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:8:"resource";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"The TAR file handle";s:11:"phpdoc_name";s:8:"resource";}i:1;a:5:{s:4:"name";s:7:"logfile";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:42:"The logfile to write to (null: no logging)";s:11:"phpdoc_name";s:7:"logfile";}i:2;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:34:"The full path to the folder to add";s:11:"phpdoc_name";s:4:"path";}i:3;a:7:{s:4:"name";s:8:"max_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:45:"The maximum file size to add (null: no limit)";s:11:"phpdoc_name";s:8:"max_size";}i:4;a:7:{s:4:"name";s:7:"subpath";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:172:"The subpath relative to the path (should be left as the default '', as this is used for the recursion to distinguish the adding base path from where it's currently looking)";s:11:"phpdoc_name";s:7:"subpath";}i:5;a:7:{s:4:"name";s:16:"avoid_backing_up";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:59:"A map (filename=>true) of files to not back up (null: none)";s:11:"phpdoc_name";s:16:"avoid_backing_up";}i:6;a:7:{s:4:"name";s:14:"root_only_dirs";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:74:"A list of directories ONLY to back up from the root (null: no restriction)";s:11:"phpdoc_name";s:14:"root_only_dirs";}i:7;a:7:{s:4:"name";s:4:"tick";s:7:"default";s:13:"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 output spaces as we go to keep the connection alive";s:11:"phpdoc_name";s:4:"tick";}i:8;a:7:{s:4:"name";s:9:"all_files";s:7:"default";s:13:"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 not skip "special files" (ones not normally archive)";s:11:"phpdoc_name";s:9:"all_files";}}s:4:"name";s:14:"tar_add_folder";s:11:"description";s:31:"Add a folder to the TAR archive";s:5:"flags";a:0:{}}s:21:"tar_extract_to_folder";a:5:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"resource";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"The TAR file handle";s:11:"phpdoc_name";s:8:"resource";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:68:"The path to the folder to extract to, relative to the base directory";s:11:"phpdoc_name";s:4:"path";}i:2;a:7:{s:4:"name";s:7:"use_afm";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:88:"Whether to extract via the AFM (assumes AFM has been set up prior to this function call)";s:11:"phpdoc_name";s:7:"use_afm";}i:3;a:7:{s:4:"name";s:5:"files";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:"The files to extract (null: all)";s:11:"phpdoc_name";s:5:"files";}i:4;a:7:{s:4:"name";s:15:"comcode_backups";s:7:"default";s:13:"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 take backups of Comcode pages";s:11:"phpdoc_name";s:15:"comcode_backups";}i:5;a:7:{s:4:"name";s:13:"report_errors";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether to report errors";s:11:"phpdoc_name";s:13:"report_errors";}}s:4:"name";s:21:"tar_extract_to_folder";s:11:"description";s:70:"Extract all the files in the specified TAR file to the specified path.";s:5:"flags";a:0:{}}s:12:"tar_get_file";a:6:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"resource";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"The TAR file handle";s:11:"phpdoc_name";s:8:"resource";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The full path to the file we want to get";s:11:"phpdoc_name";s:4:"path";}i:2;a:7:{s:4:"name";s:15:"tolerate_errors";s:7:"default";s:13:"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 to tolerate errors (returns null if error)";s:11:"phpdoc_name";s:15:"tolerate_errors";}i:3;a:7:{s:4:"name";s:13:"write_data_to";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:46:"Write data to here (null: return within array)";s:11:"phpdoc_name";s:13:"write_data_to";}}s:4:"name";s:12:"tar_get_file";s:11:"description";s:60:"Get the contents of the specified file in the specified TAR.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:199:"A map, containing 'data' (the file), 'size' (the filesize), 'mtime' (the modification timestamp), and 'mode' (the permissions) (null: not found / TAR possibly corrupt if we turned tolerate errors on)";}}s:12:"tar_add_file";a:6:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"resource";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"The TAR file handle";s:11:"phpdoc_name";s:8:"resource";}i:1;a:5:{s:4:"name";s:11:"target_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:86:"The relative path to where we wish to add the file to the archive (including filename)";s:11:"phpdoc_name";s:11:"target_path";}i:2;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The data of the file to add";s:11:"phpdoc_name";s:4:"data";}i:3;a:7:{s:4:"name";s:5:"_mode";s:7:"default";i:420;s:11:"default_raw";s:4:"0644";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"The file mode (permissions)";s:11:"phpdoc_name";s:5:"_mode";}i:4;a:7:{s:4:"name";s:6:"_mtime";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:54:"The modification time we wish for our file (null: now)";s:11:"phpdoc_name";s:6:"_mtime";}i:5;a:7:{s:4:"name";s:12:"data_is_path";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether the $data variable is actually a full file path";s:11:"phpdoc_name";s:12:"data_is_path";}i:6;a:7:{s:4:"name";s:16:"return_on_errors";s:7:"default";s:13:"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 return on errors";s:11:"phpdoc_name";s:16:"return_on_errors";}i:7;a:7:{s:4:"name";s:14:"efficient_mode";s:7:"default";s:13:"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:"Don't do duplicate checks";s:11:"phpdoc_name";s:14:"efficient_mode";}}s:4:"name";s:12:"tar_add_file";s:11:"description";s:37:"Add a file to the specified TAR file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:29:"Offset of the file in the TAR";}}s:7:"tar_crc";a:6:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"header";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The header from a TAR file";s:11:"phpdoc_name";s:6:"header";}}s:4:"name";s:7:"tar_crc";s:11:"description";s:43:"Find the checksum specified in a TAR header";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:12:"The checksum";}}s:9:"tar_close";a:5:{s:8:"filename";s:15:"sources/tar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"resource";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The TAR file handle to close";s:11:"phpdoc_name";s:8:"resource";}}s:4:"name";s:9:"tar_close";s:11:"description";s:27:"Close an open TAR resource.";s:5:"flags";a:0:{}}s:18:"convert_zip_to_tar";a:6:{s:8:"filename";s:16:"sources/tar2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"in_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:35:"The path of the TAR file to convert";s:11:"phpdoc_name";s:7:"in_path";}i:1;a:7:{s:4:"name";s:8:"out_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:68:"The path of the ZIP file to save to (null: make up a temporary path)";s:11:"phpdoc_name";s:8:"out_path";}}s:4:"name";s:18:"convert_zip_to_tar";s:11:"description";s:33:"Convert a ZIP file to a TAR file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:46:"The TAR path. A temp file that must be deleted";}}s:12:"tasks_script";a:5:{s:8:"filename";s:17:"sources/tasks.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tasks_script";s:11:"description";s:35:"Script to execute a described task.";s:5:"flags";a:0:{}}s:23:"execute_task_background";a:5:{s:8:"filename";s:17:"sources/tasks.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"task_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"The task row";s:11:"phpdoc_name";s:8:"task_row";}}s:4:"name";s:23:"execute_task_background";s:11:"description";s:26:"Execute a background task.";s:5:"flags";a:0:{}}s:31:"call_user_func_array__long_task";a:6:{s:8:"filename";s:17:"sources/tasks.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:11:"plain_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:54:"Title to use for completion notification subject lines";s:11:"phpdoc_name";s:11:"plain_title";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:90:"Title to use if there is no queueing or a queue message (null: don't return a full screen)";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"hook";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The task hook";s:11:"phpdoc_name";s:4:"hook";}i:3;a:7:{s:4:"name";s:4:"args";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:"Arguments for the task (null: no arguments)";s:11:"phpdoc_name";s:4:"args";}i:4;a:7:{s:4:"name";s:20:"run_at_end_of_script";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Whether to run the task at the end of the script (if it's not going to be put into the task queue)";s:11:"phpdoc_name";s:20:"run_at_end_of_script";}i:5;a:7:{s:4:"name";s:15:"force_immediate";s:7:"default";s:13:"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 forcibly bypass the task queue (because we've determined somehow it will be a quick task)";s:11:"phpdoc_name";s:15:"force_immediate";}i:6;a:7:{s:4:"name";s:17:"send_notification";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether to send a notification of the task having come out of the queue";s:11:"phpdoc_name";s:17:"send_notification";}}s:4:"name";s:31:"call_user_func_array__long_task";s:11:"description";s:40:"Execute a long task, via the task queue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:89:"UI (function may not return if the task is immediate and doesn't have a text/html result)";}}s:14:"init__tempcode";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__tempcode";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:24:"static_evaluate_tempcode";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ob";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Tempcode object";s:11:"phpdoc_name";s:2:"ob";}}s:4:"name";s:24:"static_evaluate_tempcode";s:11:"description";s:169:"Simple function to evaluate some Tempcode. Very rarely to be used, only if you can't call a method (e.g. you are copying direct into an array, such as in block caching).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Evaluated string";}}s:20:"php_addslashes_twice";a:6:{s:8:"filename";s:20:"sources/tempcode.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:9:"String in";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:20:"php_addslashes_twice";s:11:"description";s:139:"Escape a string to fit within PHP double quotes TWICE. Needed sometimes when generating code. This function exists for performance reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"Resultant string";}}s:11:"fast_uniqid";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"fast_uniqid";s:11:"description";s:26:"Create a unique identifer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"Unique Identifier";}}s:3:"otp";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:30:"Construct (or null if not set)";s:11:"phpdoc_name";s:3:"var";}i:1;a:7:{s:4:"name";s:6:"origin";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:66:"Where this parameter is referenced, in a compressed reference form";s:11:"phpdoc_name";s:6:"origin";}}s:4:"name";s:3:"otp";s:11:"description";s:112:"Get a string (natural for Tempcode's stream-based processing-model) representation of a bound Tempcode construct";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:5:"Value";}}s:26:"missing_template_parameter";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"origin";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:70:"Where this parameter is referenced, in a slash-combined reference form";s:11:"phpdoc_name";s:6:"origin";}}s:4:"name";s:26:"missing_template_parameter";s:11:"description";s:48:"Give an error about a missing template parameter";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"Always """;}}s:22:"build_closure_tempcode";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:4:{i:0;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:61:"The type of symbol this is (TC_SYMBOL, TC_LANGUAGE_REFERENCE)";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:3:"0 2";}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:22:"The name of the symbol";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:73:"Parameters to the symbol (null: none). In same format as expected by ecv.";s:11:"phpdoc_name";s:10:"parameters";}i:3;a:7:{s:4:"name";s:8:"escaping";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:36:"Escaping for the symbol (null: none)";s:11:"phpdoc_name";s:8:"escaping";}}s:4:"name";s:22:"build_closure_tempcode";s:11:"description";s:36:"Build a conventional Tempcode object";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Tempcode object.";}}s:15:"symbol_tempcode";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"symbol";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The ID of the symbol to use";s:11:"phpdoc_name";s:6:"symbol";}i:1;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:30:"Symbol parameters (null: none)";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:7:{s:4:"name";s:6:"escape";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:21:"Escaping (null: none)";s:11:"phpdoc_name";s:6:"escape";}}s:4:"name";s:15:"symbol_tempcode";s:11:"description";s:82:"This will create a new Tempcode object that is containing a single specifed symbol";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"A symbol Tempcode object";}}s:18:"directive_tempcode";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"directive";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The ID of the directive to use";s:11:"phpdoc_name";s:9:"directive";}i:1;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:33:"The contents (Tempcode or string)";s:11:"phpdoc_name";s:7:"content";}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:33:"Directive parameters (null: none)";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:18:"directive_tempcode";s:11:"description";s:85:"This will create a new Tempcode object that is containing a single specifed directive";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"A directive Tempcode object";}}s:18:"closure_while_loop";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"args";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"The template bound parameters";s:11:"phpdoc_name";s:4:"args";}i:1;a:5:{s:4:"name";s:16:"control_function";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"The loop control function";s:11:"phpdoc_name";s:16:"control_function";}i:2;a:5:{s:4:"name";s:13:"main_function";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"The loop execution function";s:11:"phpdoc_name";s:13:"main_function";}}s:4:"name";s:18:"closure_while_loop";s:11:"description";s:60:"Perform a simple loop, that can be inlined in an expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:12:"closure_eval";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The code";s:11:"phpdoc_name";s:4:"code";}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:19:"Template parameters";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:12:"closure_eval";s:11:"description";s:99:"Evaluate some PHP code to put the result into an expression (code is allowed to have side effects).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:12:"closure_loop";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"The template bound parameters";s:11:"phpdoc_name";s:5:"param";}i:1;a:5:{s:4:"name";s:4:"args";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:29:"The loop directive parameters";s:11:"phpdoc_name";s:4:"args";}i:2;a:5:{s:4:"name";s:13:"main_function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The loop execution function";s:11:"phpdoc_name";s:13:"main_function";}}s:4:"name";s:12:"closure_loop";s:11:"description";s:60:"Perform a simple loop, that can be inlined in an expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:20:"make_string_tempcode";a:6:{s:8:"filename";s:20:"sources/tempcode.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:6:"String";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:20:"make_string_tempcode";s:11:"description";s:29:"Convert a string to Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"Tempcode";}}s:20:"escape_html_tempcode";a:6:{s:8:"filename";s:20:"sources/tempcode.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:5:"mixed";s:11:"description";s:6:"String";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:20:"escape_html_tempcode";s:11:"description";s:48:"Add entity entity escaping to a string/Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"Tempcode";}}s:23:"apply_tempcode_escaping";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"A list of escaping to do";s:11:"phpdoc_name";s:7:"escaped";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:36:"The string to apply the escapings to";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:23:"apply_tempcode_escaping";s:11:"description";s:56:"Apply whatever escaping is requested to the given value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:114:"Output string (you do not need to collect this, as $value is pass-by-reference -- but this is useful for chaining)";}}s:30:"apply_tempcode_escaping_inline";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"escaped";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"A list of escaping to do";s:11:"phpdoc_name";s:7:"escaped";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"The string to apply the escapings to";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:30:"apply_tempcode_escaping_inline";s:11:"description";s:56:"Apply whatever escaping is requested to the given value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"Output string";}}s:16:"do_lang_tempcode";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:11:"lang_string";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The ID of the language string to use";s:11:"phpdoc_name";s:11:"lang_string";}i:1;a:7:{s:4:"name";s:6:"token1";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:64:"The first token [string or Tempcode] (replaces {1}) (null: none)";s:11:"phpdoc_name";s:6:"token1";}i:2;a:7:{s:4:"name";s:6:"token2";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:65:"The second token [string or Tempcode] (replaces {2}) (null: none)";s:11:"phpdoc_name";s:6:"token2";}i:3;a:7:{s:4:"name";s:6:"token3";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:115:"The third token (replaces {3}). May be an array of [of string], to allow any number of additional args (null: none)";s:11:"phpdoc_name";s:6:"token3";}}s:4:"name";s:16:"do_lang_tempcode";s:11:"description";s:94:"This will create a new Tempcode object that is containing a single specifed language string ID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"A language Tempcode object";}}s:24:"kid_gloves_html_escaping";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:19:"Template parameters";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:24:"kid_gloves_html_escaping";s:11:"description";s:47:"Provide automatic escaping for a template call.";s:5:"flags";a:0:{}}s:33:"kid_gloves_html_escaping_singular";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:9:"Parameter";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:33:"kid_gloves_html_escaping_singular";s:11:"description";s:54:"Provide automatic escaping for a particular parameter.";s:5:"flags";a:0:{}}s:30:"fill_template_preview_op_cache";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"fill_template_preview_op_cache";s:11:"description";s:46:"Work out if we're doing a template preview op.";s:5:"flags";a:0:{}}s:11:"do_template";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"The codename of the template being loaded";s:11:"phpdoc_name";s:8:"codename";}i:1;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:208:"A map of parameters for the template (key to value); you can have any number of parameters of any name, there is no set standard; having a _GUID parameter of random value is a convention (null: no parameters)";s:11:"phpdoc_name";s:10:"parameters";}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:14:"?LANGUAGE_NAME";s:11:"description";s:105:"The language to load the template in (templates can embed language references) (null: users own language)";s:11:"phpdoc_name";s:4:"lang";}i:3;a:7:{s:4:"name";s:11:"light_error";s:7:"default";s:13:"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 not produce a stack dump if the template is missing";s:11:"phpdoc_name";s:11:"light_error";}i:4;a:7:{s:4:"name";s:8:"fallback";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:72:"Alternate template to use if the primary one does not exist (null: none)";s:11:"phpdoc_name";s:8:"fallback";}i:5;a:8:{s:4:"name";s:6:"suffix";s:7:"default";s:4:".tpl";s:11:"default_raw";s:6:"'.tpl'";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:6;a:8:{s:4:"name";s:9:"directory";s:7:"default";s:9:"templates";s:11:"default_raw";s:11:"'templates'";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:7;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:34:"Theme to use (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:11:"do_template";s:11:"description";s:234:"Get a Tempcoded version of a Composr template. It is perhaps the most common Composr function to load up templates using do_template, and then attach them together either as parameters to each other, or via the Tempcode attach method.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The Tempcode for this template";}}s:21:"dependencies_are_good";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"dep";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:33:"Dependent files (full file paths)";s:11:"phpdoc_name";s:3:"dep";}i:1;a:5:{s:4:"name";s:8:"tcp_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:18:"Time of cache file";s:11:"phpdoc_name";s:8:"tcp_time";}}s:4:"name";s:21:"dependencies_are_good";s:11:"description";s:67:"Do a smart decache dependency check for the case of multiple files.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether decache is NOT needed";}}s:27:"handle_symbol_preprocessing";a:5:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"seq_part";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Symbol details";s:11:"phpdoc_name";s:8:"seq_part";}i:1;a:5:{s:4:"name";s:8:"children";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:29:"Where we store children stuff";s:11:"phpdoc_name";s:8:"children";}}s:4:"name";s:27:"handle_symbol_preprocessing";s:11:"description";s:69:"Certain symbols need preprocessing, before the output stream is made.";s:5:"flags";a:0:{}}s:21:"recall_named_function";a:6:{s:8:"filename";s:20:"sources/tempcode.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:"string";s:11:"description";s:22:"A randomised unique ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Parameters";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Function code";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:21:"recall_named_function";s:11:"description";s:82:"A template has not been structurally cached, so compile it and store in the cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"The function reference";}}s:16:"tempcode_include";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"filepath";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:36:"The filename of the file to include.";s:11:"phpdoc_name";s:8:"filepath";}}s:4:"name";s:16:"tempcode_include";s:11:"description";s:49:"Include and evaluate the specified Tempcode file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:33:"Success status or returned value.";}}s:10:"debug_eval";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:39:"Code to evaluate (null: code not found)";s:11:"phpdoc_name";s:4:"code";}i:1;a:7:{s:4:"name";s:9:"tpl_funcs";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:6:"?array";s:11:"description";s:35:"Evaluation code context (null: N/A)";s:11:"phpdoc_name";s:9:"tpl_funcs";}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:33:"Evaluation parameters (null: N/A)";s:11:"phpdoc_name";s:10:"parameters";}i:3;a:7:{s:4:"name";s:2:"cl";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:20:"Language (null: N/A)";s:11:"phpdoc_name";s:2:"cl";}}s:4:"name";s:10:"debug_eval";s:11:"description";s:160:"Evaluate some PHP, with ability to better debug.In a way this can also quash problems, so only use when debugging. The "@" before eval turns off attach_message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:20:"debug_call_user_func";a:6:{s:8:"filename";s:20:"sources/tempcode.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Function to call";s:11:"phpdoc_name";s:8:"function";}i:1;a:5:{s:4:"name";s:1:"a";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:15:"First parameter";s:11:"phpdoc_name";s:1:"a";}i:2;a:7:{s:4:"name";s:1:"b";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:34:"Second parameter (null: null/none)";s:11:"phpdoc_name";s:1:"b";}i:3;a:7:{s:4:"name";s:1:"c";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:33:"Third parameter (null: null/none)";s:11:"phpdoc_name";s:1:"c";}}s:4:"name";s:20:"debug_call_user_func";s:11:"description";s:50:"Call a PHP function, with ability to better debug.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:6:"Result";}}s:23:"init__tempcode_compiler";a:5:{s:8:"filename";s:29:"sources/tempcode_compiler.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"init__tempcode_compiler";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:14:"_length_so_far";a:6:{s:8:"filename";s:29:"sources/tempcode_compiler.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"bits";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Compiler tokens";s:11:"phpdoc_name";s:4:"bits";}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:37:"How far we are through the token list";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:14:"_length_so_far";s:11:"description";s:44:"Helper function or use getting line numbers.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"The sum length of tokens passed";}}s:40:"substitute_comment_encapsulated_tempcode";a:6:{s:8:"filename";s:29:"sources/tempcode_compiler.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:14:"Input Tempcode";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:40:"substitute_comment_encapsulated_tempcode";s:11:"description";s:198:"Take some Tempcode and pre-process it for Tempcode portions encapsulated within comments (or similar).This is done so syntax-highlighters don't break, and WYSIWYG-editors don't corrupt the Tempcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Output Tempcode";}}s:16:"compile_template";a:6:{s:8:"filename";s:29:"sources/tempcode_compiler.php";s:10:"parameters";a:5:{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:26:"The template file contents";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:13:"template_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The name of the template";s:11:"phpdoc_name";s:13:"template_name";}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:21:"The name of the theme";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:7:"ID_TEXT";s:11:"description";s:22:"The language it is for";s:11:"phpdoc_name";s:4:"lang";}i:4;a:7:{s:4:"name";s:15:"tolerate_errors";s:7:"default";s:13:"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 tolerate errors";s:11:"phpdoc_name";s:15:"tolerate_errors";}}s:4:"name";s:16:"compile_template";s:11:"description";s:100:"Compile a template into a list of appendable outputs, for the closure-style Tempcode implementation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:139:"A pair: array Compiled result structure, array preprocessable bits (special stuff needing attention that is referenced within the template)";}}s:12:"_do_template";a:6:{s:8:"filename";s:29:"sources/tempcode_compiler.php";s:10:"parameters";a:7:{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:43:"The theme the template is in the context of";s:11:"phpdoc_name";s:5:"theme";}i:1;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:29:"The path to the template file";s:11:"phpdoc_name";s:4:"path";}i:2;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:39:"The codename of the template (e.g. foo)";s:11:"phpdoc_name";s:8:"codename";}i:3;a:5:{s:4:"name";s:9:"_codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:61:"The actual codename to use for the template (e.g. foo_mobile)";s:11:"phpdoc_name";s:9:"_codename";}i:4;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:46:"The language the template is in the context of";s:11:"phpdoc_name";s:4:"lang";}i:5;a:5:{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";}i:6;a:7:{s:4:"name";s:10:"theme_orig";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 theme to cache in (null: main theme)";s:11:"phpdoc_name";s:10:"theme_orig";}}s:4:"name";s:12:"_do_template";s:11:"description";s:82:"A template has not been structurally cached, so compile it and store in the cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The compiled Tempcode";}}s:20:"template_to_tempcode";a:6:{s:8:"filename";s:29:"sources/tempcode_compiler.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The template text";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:10:"symbol_pos";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:42:"The position we are looking at in the text";s:11:"phpdoc_name";s:10:"symbol_pos";}i:2;a:7:{s:4:"name";s:16:"inside_directive";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:92:"Whether this text is in fact a directive, about to be put in the context of a wider template";s:11:"phpdoc_name";s:16:"inside_directive";}i:3;a:7:{s:4:"name";s:8:"codename";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:39:"The codename of the template (e.g. foo)";s:11:"phpdoc_name";s:8:"codename";}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:41:"The theme it is for (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}i:5;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:8:"?ID_TEXT";s:11:"description";s:47:"The language it is for (null: current language)";s:11:"phpdoc_name";s:4:"lang";}i:6;a:7:{s:4:"name";s:15:"tolerate_errors";s:7:"default";s:13:"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 tolerate errors";s:11:"phpdoc_name";s:15:"tolerate_errors";}}s:4:"name";s:20:"template_to_tempcode";s:11:"description";s:43:"Convert template text into Tempcode format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:93:"The converted/compiled template as Tempcode, OR if a directive, encoded directive information";}}s:22:"build_closure_function";a:6:{s:8:"filename";s:29:"sources/tempcode_compiler.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"myfunc";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The function name";s:11:"phpdoc_name";s:6:"myfunc";}i:1;a:5:{s:4:"name";s:5:"parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:54:"An array of lines to be output, each one in PHP format";s:11:"phpdoc_name";s:5:"parts";}}s:4:"name";s:22:"build_closure_function";s:11:"description";s:49:"Build a closure function for a compiled template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"Finished PHP code";}}s:17:"optimise_tempcode";a:5:{s:8:"filename";s:30:"sources/tempcode_optimiser.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ob";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:27:"Optimise a Tempcode object.";s:11:"phpdoc_name";s:2:"ob";}}s:4:"name";s:17:"optimise_tempcode";s:11:"description";s:90:"Optimise for memory and execution time. This is typically used before something is cached.";s:5:"flags";a:0:{}}s:15:"init__templates";a:5:{s:8:"filename";s:21:"sources/templates.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"init__templates";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"put_in_standard_box";a:6:{s:8:"filename";s:21:"sources/templates.php";s:10:"parameters";a:9:{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:36:"The content being put inside the box";s:11:"phpdoc_name";s:7:"content";}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:5:"mixed";s:11:"description";s:81:"The title of the standard box, string or Tempcode (blank: titleless standard box)";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:4:"type";s:7:"default";s:7:"default";s:11:"default_raw";s:9:"'default'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:60:"The type of the box. Refers to a template (STANDARDBOX_type)";s:11:"phpdoc_name";s:4:"type";}i:3;a:7:{s:4:"name";s:5:"width";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:"The CSS width";s:11:"phpdoc_name";s:5:"width";}i:4;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:6:"string";s:11:"description";s:79:"'|' separated list of options (meaning dependant upon templates interpretation)";s:11:"phpdoc_name";s:7:"options";}i:5;a:7:{s:4:"name";s:4:"meta";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:64:"'|' separated list of meta information (key|value|key|value|...)";s:11:"phpdoc_name";s:4:"meta";}i:6;a:7:{s:4:"name";s:5:"links";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:53:"'|' separated list of link information (linkhtml|...)";s:11:"phpdoc_name";s:5:"links";}i:7;a:7:{s:4:"name";s:9:"top_links";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:41:"Link to be added to the header of the box";s:11:"phpdoc_name";s:9:"top_links";}i:8;a:7:{s:4:"name";s:5:"class";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:"CSS class to use";s:11:"phpdoc_name";s:5:"class";}}s:4:"name";s:19:"put_in_standard_box";s:11:"description";s:212:"Get the Tempcode for a standard box (CSS driven), with the specified content entered. Please rarely use this function; it is not good to assume people want anythings in one of these boxes... use templates instead";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:74:"The contents, put inside a standard box, according to the other parameters";}}s:16:"get_screen_title";a:6:{s:8:"filename";s:21:"sources/templates.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:5:"mixed";s:11:"description";s:59:"The title to use (usually, a language string ID, see below)";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:16:"dereference_lang";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:85:"Whether the given title is actually a language string ID, and hence gets dereferenced";s:11:"phpdoc_name";s:16:"dereference_lang";}i:2;a:7:{s:4:"name";s:6:"params";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:51:"Parameters sent to the language string (null: none)";s:11:"phpdoc_name";s:6:"params";}i:3;a:7:{s:4:"name";s:17:"user_online_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:74:"Separate title to put into the 'currently viewing' data (null: use $title)";s:11:"phpdoc_name";s:17:"user_online_title";}i:4;a:7:{s:4:"name";s:6:"awards";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:39:"Awards to say this has won (null: none)";s:11:"phpdoc_name";s:6:"awards";}i:5;a:7:{s:4:"name";s:16:"save_as_metadata";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Whether to use this as metadata for the screen";s:11:"phpdoc_name";s:16:"save_as_metadata";}}s:4:"name";s:16:"get_screen_title";s:11:"description";s:94:"Get the Tempcode for a page title. (Ones below the page header, not in the browser title bar.)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The title Tempcode";}}s:9:"hyperlink";a:6:{s:8:"filename";s:21:"sources/templates.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:53:"The URL to put in the hyperlink (URLPATH or Tempcode)";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:7:"caption";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:50:"The hyperlinks caption (either Tempcode or string)";s:11:"phpdoc_name";s:7:"caption";}i:2;a:5:{s:4:"name";s:8:"external";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:101:"Whether the link is an external one (by default, the external template makes it open in a new window)";s:11:"phpdoc_name";s:8:"external";}i:3;a:5:{s:4:"name";s:6:"escape";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:86:"Whether to escape the hyperlink caption (only applies if it is not passed as Tempcode)";s:11:"phpdoc_name";s:6:"escape";}i:4;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:5:"mixed";s:11:"description";s:52:"Link title (either Tempcode or string) (blank: none)";s:11:"phpdoc_name";s:5:"title";}i:5;a:7:{s:4:"name";s:9:"accesskey";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:"The access key to use (null: none)";s:11:"phpdoc_name";s:9:"accesskey";}i:6;a:7:{s:4:"name";s:9:"post_data";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:"Data to post (null: an ordinary link)";s:11:"phpdoc_name";s:9:"post_data";}i:7;a:7:{s:4:"name";s:3:"rel";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:"Rel (link type) (null: no special type)";s:11:"phpdoc_name";s:3:"rel";}i:8;a:7:{s:4:"name";s:7:"overlay";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:112:"Open in overlay with the default link/form target being as follows (e.g. _top or _self) (null: an ordinary link)";s:11:"phpdoc_name";s:7:"overlay";}}s:4:"name";s:9:"hyperlink";s:11:"description";s:33:"Get the Tempcode for a hyperlink.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:23:"The generated hyperlink";}}s:3:"div";a:6:{s:8:"filename";s:21:"sources/templates.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"tempcode";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The Tempcode to put into a div";s:11:"phpdoc_name";s:8:"tempcode";}i:1;a:7:{s:4:"name";s:4:"guid";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:"GUID for call";s:11:"phpdoc_name";s:4:"guid";}i:2;a:7:{s:4:"name";s:5:"class";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:"CSS classname (null: none)";s:11:"phpdoc_name";s:5:"class";}}s:4:"name";s:3:"div";s:11:"description";s:100:"Get the Tempcode for a div. Similar to paragraph, but may contain more formatting (such as 's)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:31:"The generated div with contents";}}s:4:"span";a:6:{s:8:"filename";s:21:"sources/templates.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"tempcode";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:31:"The Tempcode to put into a span";s:11:"phpdoc_name";s:8:"tempcode";}i:1;a:7:{s:4:"name";s:4:"guid";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:"GUID for call";s:11:"phpdoc_name";s:4:"guid";}i:2;a:7:{s:4:"name";s:5:"class";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:"CSS classname (null: none)";s:11:"phpdoc_name";s:5:"class";}}s:4:"name";s:4:"span";s:11:"description";s:27:"Get the Tempcode for a span";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:32:"The generated span with contents";}}s:9:"paragraph";a:6:{s:8:"filename";s:21:"sources/templates.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:55:"The text to put into the paragraph (string or Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:1;a:7:{s:4:"name";s:4:"guid";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:"GUID for call";s:11:"phpdoc_name";s:4:"guid";}i:2;a:7:{s:4:"name";s:5:"class";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:"CSS classname (null: none)";s:11:"phpdoc_name";s:5:"class";}}s:4:"name";s:9:"paragraph";s:11:"description";s:332:"Get the Tempcode for a paragraph. This function should only be used with escaped text strings that need to be put into a paragraph, not with sections of HTML. Remember, paragraphs are literally that, and should only be used with templates that don't assume that they are going to put the given parameters into paragraphs themselves.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:23:"The generated paragraph";}}s:13:"inform_screen";a:6:{s:8:"filename";s:21:"sources/templates.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:26:"The title of the info page";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:63:"The text to put on the info page (string, or language-Tempcode)";s:11:"phpdoc_name";s:4:"text";}i:2;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether match key messages / redirects should be supported";s:11:"phpdoc_name";s:26:"support_match_key_messages";}i:3;a:7:{s:4:"name";s:8:"back_url";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:39:"URL to have back button to (null: none)";s:11:"phpdoc_name";s:8:"back_url";}i:4;a:7:{s:4:"name";s:6:"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:48:"Fields to carry with on back button (null: none)";s:11:"phpdoc_name";s:6:"fields";}}s:4:"name";s:13:"inform_screen";s:11:"description";s:34:"Get the Tempcode for an info page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The info page";}}s:11:"warn_screen";a:6:{s:8:"filename";s:21:"sources/templates.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:26:"The title of the warn page";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:60:"The text to put on the warn page (either Tempcode or string)";s:11:"phpdoc_name";s:4:"text";}i:2;a:7:{s:4:"name";s:12:"provide_back";s:7:"default";s:12:"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 a back button";s:11:"phpdoc_name";s:12:"provide_back";}i:3;a:7:{s:4:"name";s:26:"support_match_key_messages";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether match key messages / redirects should be supported";s:11:"phpdoc_name";s:26:"support_match_key_messages";}}s:4:"name";s:11:"warn_screen";s:11:"description";s:33:"Get the Tempcode for a warn page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The warn page";}}s:17:"form_input_hidden";a:6:{s:8:"filename";s:21:"sources/templates.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:7:"ID_TEXT";s:11:"description";s:38:"The name which this input field is for";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The value for this input field";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:17:"form_input_hidden";s:11:"description";s:43:"Get the Tempcode for a hidden form element.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:21:"form_input_list_group";a:6:{s:8:"filename";s:21:"sources/templates.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:5:"mixed";s:11:"description";s:23:"The title for the group";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:7:"entries";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"List entries for group";s:11:"phpdoc_name";s:7:"entries";}}s:4:"name";s:21:"form_input_list_group";s:11:"description";s:174:"Get the Tempcode for a group of list entry. May be attached directly to form_input_list_entry (i.e. this is a group node in a shared tree), and also fed into form_input_list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:9:"The group";}}s:21:"form_input_list_entry";a:6:{s:8:"filename";s:21:"sources/templates.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The value for this entry";s:11:"phpdoc_name";s:5:"value";}i:1;a:7:{s:4:"name";s:8:"selected";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether this entry is selected by default or not (Note: if nothing else is selected and this is the first, it will be selected by default anyway)";s:11:"phpdoc_name";s:8:"selected";}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:5:"mixed";s:11:"description";s:68:"The text associated with this choice (blank: just use name for text)";s:11:"phpdoc_name";s:4:"text";}i:3;a:7:{s:4:"name";s:3:"red";s:7:"default";s:13:"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 this entry will be put as red (marking it as important somehow)";s:11:"phpdoc_name";s:3:"red";}i:4;a:7:{s:4:"name";s:8:"disabled";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether this list entry is disabled (like a header in a list)";s:11:"phpdoc_name";s:8:"disabled";}}s:4:"name";s:21:"form_input_list_entry";s:11:"description";s:174:"Get the Tempcode for a list entry. (You would gather together the outputs of several of these functions, then put them in as the $content in a form_input_list function call).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"The input field";}}s:15:"with_whitespace";a:6:{s:8:"filename";s:21:"sources/templates.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:5:"Input";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:15:"with_whitespace";s:11:"description";s:69:"Display some raw text so that it is repeated as raw visually in HTML.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"Output";}}s:15:"redirect_screen";a:6:{s:8:"filename";s:21:"sources/templates.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:33:"Title to display on redirect page";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:33:"Destination URL (may be Tempcode)";s:11:"phpdoc_name";s:3:"url";}i:2;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:6:"?mixed";s:11:"description";s:70:"Message to show (may be Tempcode) (null: standard redirection message)";s:11:"phpdoc_name";s:4:"text";}i:3;a:7:{s:4:"name";s:16:"intermediary_hop";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:128:"For intermediary hops, don't mark so as to read status messages - save them up for the next hop (which will not be intermediary)";s:11:"phpdoc_name";s:16:"intermediary_hop";}i:4;a:8:{s:4:"name";s:8:"msg_type";s:7:"default";s:6:"inform";s:11:"default_raw";s:8:"'inform'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"Code of message type to show";s:11:"phpdoc_name";s:8:"msg_type";s:3:"set";s:17:"warn inform fatal";}}s:4:"name";s:15:"redirect_screen";s:11:"description";s:98:"Redirect the user - transparently, storing a message that will be shown on their destination page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:79:"Redirection message (likely to not actually be seen due to instant redirection)";}}s:25:"columned_table_header_row";a:6:{s:8:"filename";s:36:"sources/templates_columned_table.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:68:"The array of field titles that define the entries in the table table";s:11:"phpdoc_name";s:6:"values";}}s:4:"name";s:25:"columned_table_header_row";s:11:"description";s:40:"Get the Tempcode for a table header row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:20:"The generated header";}}s:18:"columned_table_row";a:6:{s:8:"filename";s:36:"sources/templates_columned_table.php";s:10:"parameters";a:2:{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:41:"The array of values that make up this row";s:11:"phpdoc_name";s:6:"values";}i:1;a:5:{s:4:"name";s:6:"escape";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether to add escaping";s:11:"phpdoc_name";s:6:"escape";}}s:4:"name";s:18:"columned_table_row";s:11:"description";s:33:"Get the Tempcode for a table row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The generated row";}}s:14:"confirm_screen";a:6:{s:8:"filename";s:36:"sources/templates_confirm_screen.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:61:"The title for the confirmation page (out of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:7:"preview";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:52:"The preview that's being confirmed for actualisation";s:11:"phpdoc_name";s:7:"preview";}i:2;a:5:{s:4:"name";s:8:"url_type";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:88:"The URL type to confirm through to OR a full URL OR a full URL (if long, or if Tempcode)";s:11:"phpdoc_name";s:8:"url_type";}i:3;a:7:{s:4:"name";s:13:"back_url_type";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:82:"The URL type if we click back OR a full URL (if long, or if Tempcode) (null: none)";s:11:"phpdoc_name";s:13:"back_url_type";}i:4;a:7:{s:4:"name";s:8:"sup_post";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:85:"A map of supplementary post data to get passed through upon confirmation (null: none)";s:11:"phpdoc_name";s:8:"sup_post";}i:5;a:7:{s:4:"name";s:6:"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:69:"Form fields to pass through as post data on confirmation (null: none)";s:11:"phpdoc_name";s:6:"fields";}}s:4:"name";s:14:"confirm_screen";s:11:"description";s:41:"Get the Tempcode for a confirmation page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The confirmation page";}}s:22:"do_next_manager_hooked";a:6:{s:8:"filename";s:28:"sources/templates_donext.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:7:"ID_TEXT";s:11:"description";s:50:"The title of what we are doing (a language string)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:123:"The language string ID for the docs of the hook defined do-next manager that we're creating OR Tempcode for it (null: none)";s:11:"phpdoc_name";s:4:"text";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:72:"The menu 'type' we are doing (filters out any icons that don't match it)";s:11:"phpdoc_name";s:4:"type";}i:3;a:7:{s:4:"name";s:10:"main_title";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:77:"The title to use for the main links (a language string) (null: same as title)";s:11:"phpdoc_name";s:10:"main_title";}}s:4:"name";s:22:"do_next_manager_hooked";s:11:"description";s:199:"Get the Tempcode for a do next manager. A do next manager is a series of linked icons that are presented after performing an action. Modules that do not use do-next pages, usually use REFRESH_PAGE's.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The do next manager";}}s:15:"do_next_manager";a:6:{s:8:"filename";s:28:"sources/templates_donext.php";s:10:"parameters";a:23:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:115:"The title of what we just did (should have been passed through get_screen_title already) (null: don't do full page)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:60:"The 'text' (actually, a full XHTML lump) to show on the page";s:11:"phpdoc_name";s:4:"text";}i:2;a:7:{s:4:"name";s:4:"main";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:153:"An array of entry types, with each array entry being -- an array consisting of the type codename and a URL array as per following parameters (null: none)";s:11:"phpdoc_name";s:4:"main";}i:3;a:7:{s:4:"name";s:10:"main_title";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:48:"The title to use for the main links (null: none)";s:11:"phpdoc_name";s:10:"main_title";}i:4;a:7:{s:4:"name";s:11:"url_add_one";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:97:"The URL used to 'add-one' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:11:"url_add_one";}i:5;a:7:{s:4:"name";s:13:"url_edit_this";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:99:"The URL used to 'edit-this' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:13:"url_edit_this";}i:6;a:7:{s:4:"name";s:12:"url_edit_one";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:98:"The URL used to 'edit-one' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:12:"url_edit_one";}i:7;a:7:{s:4:"name";s:13:"url_view_this";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:99:"The URL used to 'view-this' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:13:"url_view_this";}i:8;a:7:{s:4:"name";s:16:"url_view_archive";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:102:"The URL used to 'view-archive' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:16:"url_view_archive";}i:9;a:7:{s:4:"name";s:19:"url_add_to_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:105:"The URL used to 'add-to-category' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:19:"url_add_to_category";}i:10;a:7:{s:4:"name";s:20:"url_add_one_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:106:"The URL used to 'add-one-category' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:20:"url_add_one_category";}i:11;a:7:{s:4:"name";s:21:"url_edit_one_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:107:"The URL used to 'edit-one-category' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:21:"url_edit_one_category";}i:12;a:7:{s:4:"name";s:22:"url_edit_this_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:108:"The URL used to 'edit-this-category' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:22:"url_edit_this_category";}i:13;a:7:{s:4:"name";s:22:"url_view_this_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:108:"The URL used to 'view-this-category' (null: impossible) (format: array of page, param, zone[, custom label])";s:11:"phpdoc_name";s:22:"url_view_this_category";}i:14;a:7:{s:4:"name";s:12:"entry_extras";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:131:"An array of additional entry types, with each array entry being -- an array of type codename and a URL array as before (null: none)";s:11:"phpdoc_name";s:12:"entry_extras";}i:15;a:7:{s:4:"name";s:15:"category_extras";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:47:"As before, but with category types (null: none)";s:11:"phpdoc_name";s:15:"category_extras";}i:16;a:7:{s:4:"name";s:17:"additional_extras";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:"As before, but for an 'extra types' box of do next actions (null: none)";s:11:"phpdoc_name";s:17:"additional_extras";}i:17;a:7:{s:4:"name";s:16:"additional_title";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:49:"The title to use for the extra types (null: none)";s:11:"phpdoc_name";s:16:"additional_title";}i:18;a:7:{s:4:"name";s:5:"intro";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:30:"Introductory text (null: none)";s:11:"phpdoc_name";s:5:"intro";}i:19;a:7:{s:4:"name";s:13:"entries_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:46:"Entries section title (null: default, Entries)";s:11:"phpdoc_name";s:13:"entries_title";}i:20;a:7:{s:4:"name";s:16:"categories_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:52:"Categories section title (null: default, Categories)";s:11:"phpdoc_name";s:16:"categories_title";}i:21;a:7:{s:4:"name";s:18:"entry_content_type";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:"Entry content type (null: unknown)";s:11:"phpdoc_name";s:18:"entry_content_type";}i:22;a:7:{s:4:"name";s:21:"category_content_type";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:37:"Category content type (null: unknown)";s:11:"phpdoc_name";s:21:"category_content_type";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:199:"Get the Tempcode for a do next manager. A do next manager is a series of linked icons that are presented after performing an action. Modules that do not use do-next pages, usually use REFRESH_PAGE's.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The do next manager";}}s:16:"_do_next_section";a:6:{s:8:"filename";s:28:"sources/templates_donext.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"list";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:166:"A list of items (each item is a pair or a triple: ; url is a pair or a triple or a quarto also: )";s:11:"phpdoc_name";s:4:"list";}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:25:"The title for the section";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:18:"entry_content_type";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:"Entry content type (null: unknown)";s:11:"phpdoc_name";s:18:"entry_content_type";}i:3;a:7:{s:4:"name";s:21:"category_content_type";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:37:"Category content type (null: unknown)";s:11:"phpdoc_name";s:21:"category_content_type";}}s:4:"name";s:16:"_do_next_section";s:11:"description";s:199:"Get the Tempcode for a do next manager. A do next manager is a series of linked icons that are presented after performing an action. Modules that do not use do-next pages, usually use REFRESH_PAGE's.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"The do next manager section";}}s:24:"tpl_crop_text_mouse_over";a:6:{s:8:"filename";s:32:"sources/templates_interfaces.php";s:10:"parameters";a:2:{i:0;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 text";s:11:"phpdoc_name";s:4:"text";}i:1;a:5:{s:4:"name";s:3:"len";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The length to crop at";s:11:"phpdoc_name";s:3:"len";}}s:4:"name";s:24:"tpl_crop_text_mouse_over";s:11:"description";s:71:"Get Tempcode for cropped text, that fully reveals itself on mouse-over.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The cropped text";}}s:22:"internalise_own_screen";a:6:{s:8:"filename";s:40:"sources/templates_internalise_screen.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:14:"screen_content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The screen content";s:11:"phpdoc_name";s:14:"screen_content";}i:1;a:7:{s:4:"name";s:12:"refresh_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:49:"The time between refreshes (null: do not refresh)";s:11:"phpdoc_name";s:12:"refresh_time";}i:2;a:7:{s:4:"name";s:18:"refresh_if_changed";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:98:"Data. A refresh will only happen if an AJAX-check indicates this data has changed (null: no check)";s:11:"phpdoc_name";s:18:"refresh_if_changed";}}s:4:"name";s:22:"internalise_own_screen";s:11:"description";s:162:"Put the contents of a screen inside an AJAX updatable area. This is typically used when a page is being used to traverse a result-set that spans multiple screens.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"The screen output, wrapped with some AJAX code";}}s:16:"map_table_screen";a:6:{s:8:"filename";s:31:"sources/templates_map_table.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:62:"The title of the view space; should be out of get_screen_title";s:11:"phpdoc_name";s:5:"title";}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:73:"An array of mappings between title and value (each mapping being a field)";s:11:"phpdoc_name";s:6:"fields";}}s:4:"name";s:16:"map_table_screen";s:11:"description";s:136:"Get the Tempcode for a view space page. (a view space shows a single entry, with the field name for each field to the left of the value)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The generated view space";}}s:15:"map_table_field";a:6:{s:8:"filename";s:31:"sources/templates_map_table.php";s:10:"parameters";a:4:{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:56:"The field title (Tempcode or string). Assumed unescaped.";s:11:"phpdoc_name";s:4:"name";}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:56:"The field value (Tempcode or string). Assumed unescaped.";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:3:"raw";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether the field should be shown as untitled... because it is an element of a subblock of raw rows";s:11:"phpdoc_name";s:3:"raw";}i:3;a:7:{s:4:"name";s:4:"abbr";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:"Field abbreviation (blank: none)";s:11:"phpdoc_name";s:4:"abbr";}}s:4:"name";s:15:"map_table_field";s:11:"description";s:40:"Get the Tempcode for a view space field.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The generated view space field";}}s:26:"init__templates_pagination";a:5:{s:8:"filename";s:32:"sources/templates_pagination.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"init__templates_pagination";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:30:"get_keyset_pagination_settings";a:6:{s:8:"filename";s:32:"sources/templates_pagination.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:8:"max_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:29:"GET parameter for max results";s:11:"phpdoc_name";s:8:"max_name";}i:1;a:5:{s:4:"name";s:11:"max_default";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"Default max results value";s:11:"phpdoc_name";s:11:"max_default";}i:2;a:5:{s:4:"name";s:10:"start_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"GET parameter for start position";s:11:"phpdoc_name";s:10:"start_name";}i:3;a:7:{s:4:"name";s:13:"compound_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:117:"GET parameter name that includes a JSON-encoded combination of $max/$start/$sort/$keyset_param (null: no combo param)";s:11:"phpdoc_name";s:13:"compound_name";}i:4;a:7:{s:4:"name";s:9:"sort_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:79:"GET parameter for sort order (null: no URL parameter for sorting or no sorting)";s:11:"phpdoc_name";s:9:"sort_name";}i:5;a:7:{s:4:"name";s:12:"sort_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:37:"Default sort order (null: no sorting)";s:11:"phpdoc_name";s:12:"sort_default";}i:6;a:7:{s:4:"name";s:16:"sort_filter_func";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:247:"Function to turn sort parameter into actual database field SQL plus a keyset field parameter [see get_forum_sort_order function as an example] (null: none). This can also be used to define an important security filter, so you should always use it.";s:11:"phpdoc_name";s:16:"sort_filter_func";}}s:4:"name";s:30:"get_keyset_pagination_settings";s:11:"description";s:86:"Get SQL pagination parameters taking into account the potential for keyset-pagination.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:254:"A tuple Max to select, Start position, SQL sort order, SQL to append for where clause, SQL to append as order clause, True start position (ignores keyset pagination), Compound parameter, Keyset field name so that we can extract values from DB result sets";}}s:10:"pagination";a:6:{s:8:"filename";s:32:"sources/templates_pagination.php";s:10:"parameters";a:11:{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:54:"The title/name of the resource we are browsing through";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"The current position in the browser";s:11:"phpdoc_name";s:5:"start";}i:2;a:5:{s:4:"name";s:10:"start_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:79:"The parameter name used to store our position in the results (usually, 'start')";s:11:"phpdoc_name";s:10:"start_name";}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:51:"The maximum number of rows to show per browser page";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:8:"max_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:94:"The parameter name used to store the total number of results to show per-page (usually, 'max')";s:11:"phpdoc_name";s:8:"max_name";}i:5;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The maximum number of rows in the entire dataset";s:11:"phpdoc_name";s:8:"max_rows";}i:6;a:7:{s:4:"name";s:9:"keep_post";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:47:"Whether to keep post data when browsing through";s:11:"phpdoc_name";s:9:"keep_post";}i:7;a:7:{s:4:"name";s:14:"max_page_links";s:7:"default";i:5;s:11:"default_raw";s:1:"5";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"The maximum number of quick-jump page-links to show";s:11:"phpdoc_name";s:14:"max_page_links";}i:8;a:7:{s:4:"name";s:10:"_selectors";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:"List of per-page selectors to show (null: show hard-coded ones)";s:11:"phpdoc_name";s:10:"_selectors";}i:9;a:7:{s:4:"name";s:4:"hash";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:21:"Hash component to URL";s:11:"phpdoc_name";s:4:"hash";}i:10;a:7:{s:4:"name";s:12:"keyset_value";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:93:"Keyset-pagination reference value for the 'next' page of results (null: no keyset pagination)";s:11:"phpdoc_name";s:12:"keyset_value";}}s:4:"name";s:10:"pagination";s:11:"description";s:39:"Get the Tempcode for a results browser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The results browser";}}s:25:"_build_pagination_cat_url";a:6:{s:8:"filename";s:32:"sources/templates_pagination.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"url_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:72:"Map of GET array segments to use (others will be added by this function)";s:11:"phpdoc_name";s:9:"url_array";}i:1;a:5:{s:4:"name";s:10:"post_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:50:"Map of POST array segments (relayed as GET) to use";s:11:"phpdoc_name";s:10:"post_array";}i:2;a:5:{s:4:"name";s:4:"hash";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"Hash component to URL";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:25:"_build_pagination_cat_url";s:11:"description";s:50:"Helper function to work out a results browser URL.";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:"_redirect_screen";a:6:{s:8:"filename";s:37:"sources/templates_redirect_screen.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:33:"Title to display on redirect page";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:33:"Destination URL (may be Tempcode)";s:11:"phpdoc_name";s:3:"url";}i:2;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:6:"?mixed";s:11:"description";s:237:"Message (may be Tempcode) to show in the HTML of the redirect screen (which is usually never seen) and also after the redirect (null: standard redirection message which will only show in the HTML of the redirect screen and nothing after)";s:11:"phpdoc_name";s:4:"text";}i:3;a:7:{s:4:"name";s:16:"intermediary_hop";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:128:"For intermediary hops, don't mark so as to read status messages - save them up for the next hop (which will not be intermediary)";s:11:"phpdoc_name";s:16:"intermediary_hop";}i:4;a:8:{s:4:"name";s:8:"msg_type";s:7:"default";s:6:"inform";s:11:"default_raw";s:8:"'inform'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"Code of message type to show";s:11:"phpdoc_name";s:8:"msg_type";s:3:"set";s:17:"warn inform fatal";}}s:4:"name";s:16:"_redirect_screen";s:11:"description";s:98:"Redirect the user - transparently, storing a message that will be shown on their destination page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:79:"Redirection message (likely to not actually be seen due to instant redirection)";}}s:16:"results_launcher";a:6:{s:8:"filename";s:37:"sources/templates_result_launcher.php";s:10:"parameters";a:8:{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:54:"The title/name of the resource we are browsing through";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:7:"ID_TEXT";s:11:"description";s:35:"The page name we are launching into";s:11:"phpdoc_name";s:4:"page";}i:2;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The category ID we are browsing in";s:11:"phpdoc_name";s:11:"category_id";}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:51:"The maximum number of rows to show per browser page";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The maximum number of rows in the entire dataset";s:11:"phpdoc_name";s:8:"max_rows";}i:5;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:64:"The page type this browser is browsing through (e.g. 'category')";s:11:"phpdoc_name";s:4:"type";}i:6;a:7:{s:4:"name";s:14:"max_page_links";s:7:"default";i:5;s:11:"default_raw";s:1:"5";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"The maximum number of quick-jump page-links to show";s:11:"phpdoc_name";s:14:"max_page_links";}i:7;a:7:{s:4:"name";s:10:"start_name";s:7:"default";s:5:"start";s:11:"default_raw";s:7:"'start'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"GET parameter for start position";s:11:"phpdoc_name";s:10:"start_name";}}s:4:"name";s:16:"results_launcher";s:11:"description";s:40:"Get the Tempcode for a results launcher.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:20:"The results launcher";}}s:13:"results_table";a:6:{s:8:"filename";s:35:"sources/templates_results_table.php";s:10:"parameters";a:19:{i:0;a:5:{s:4:"name";s:7:"text_id";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:68:"Some text/word describing what is being browsed (Tempcode or string)";s:11:"phpdoc_name";s:7:"text_id";}i:1;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:46:"The result number our table starts at (x of n)";s:11:"phpdoc_name";s:5:"start";}i:2;a:5:{s:4:"name";s:10:"start_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:79:"The parameter name used to store our position in the results (usually, 'start')";s:11:"phpdoc_name";s:10:"start_name";}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:44:"The total number of results to show per-page";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:8:"max_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:94:"The parameter name used to store the total number of results to show per-page (usually, 'max')";s:11:"phpdoc_name";s:8:"max_name";}i:5;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:48:"The maximum number of rows in the entire dataset";s:11:"phpdoc_name";s:8:"max_rows";}i:6;a:5:{s:4:"name";s:12:"fields_title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:87:"The titles of the fields we are showing in our table, presented in preprepared Tempcode";s:11:"phpdoc_name";s:12:"fields_title";}i:7;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:52:"The values of the fields we are showing in our table";s:11:"phpdoc_name";s:6:"fields";}i:8;a:7:{s:4:"name";s:9:"sortables";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:122:"A map of sortable code (usually, db field names), to strings giving the human name for the sort order (null: no sortables)";s:11:"phpdoc_name";s:9:"sortables";}i:9;a:7:{s:4:"name";s:8:"sortable";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:33:"The current sortable (null: none)";s:11:"phpdoc_name";s:8:"sortable";}i:10;a:8:{s:4:"name";s:10:"sort_order";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 order we are sorting in (null: none)";s:11:"phpdoc_name";s:10:"sort_order";s:3:"set";s:8:"ASC DESC";}i:11;a:7:{s:4:"name";s:9:"sort_name";s:7:"default";s:4:"sort";s:11:"default_raw";s:6:"'sort'";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:75:"The parameter name used to store our sortable (usually 'sort') (null: none)";s:11:"phpdoc_name";s:9:"sort_name";}i:12;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:28:"Message to show (null: auto)";s:11:"phpdoc_name";s:7:"message";}i:13;a:7:{s:4:"name";s:6:"widths";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:48:"Widths to specify to the table (null: none sent)";s:11:"phpdoc_name";s:6:"widths";}i:14;a:7:{s:4:"name";s:6:"tplset";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 template set to use (null: default)";s:11:"phpdoc_name";s:6:"tplset";}i:15;a:7:{s:4:"name";s:14:"max_page_links";s:7:"default";i:8;s:11:"default_raw";s:1:"8";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"The maximum number of quick-jump page-links to show";s:11:"phpdoc_name";s:14:"max_page_links";}i:16;a:7:{s:4:"name";s:4:"guid";s:7:"default";s:32:"1c8645bc2a3ff5bec2e003142185561f";s:11:"default_raw";s:34:"'1c8645bc2a3ff5bec2e003142185561f'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"GUID to pass to template";s:11:"phpdoc_name";s:4:"guid";}i:17;a:7:{s:4:"name";s:19:"skip_sortables_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:89:"Whether to skip showing a sort form (useful if there is another form wrapped around this)";s:11:"phpdoc_name";s:19:"skip_sortables_form";}i:18;a:7:{s:4:"name";s:4:"hash";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:31:"URL hash component (null: none)";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:13:"results_table";s:11:"description";s:37:"Get the Tempcode for a results table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The results table";}}s:14:"results_sorter";a:6:{s:8:"filename";s:35:"sources/templates_results_table.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:9:"sortables";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:122:"A map of sortable code (usually, db field names), to strings giving the human name for the sort order (null: no sortables)";s:11:"phpdoc_name";s:9:"sortables";}i:1;a:7:{s:4:"name";s:8:"sortable";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:33:"The current sortable (null: none)";s:11:"phpdoc_name";s:8:"sortable";}i:2;a:8:{s:4:"name";s:10:"sort_order";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 order we are sorting in (null: none)";s:11:"phpdoc_name";s:10:"sort_order";s:3:"set";s:8:"ASC DESC";}i:3;a:7:{s:4:"name";s:9:"sort_name";s:7:"default";s:4:"sort";s:11:"default_raw";s:6:"'sort'";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:75:"The parameter name used to store our sortable (usually 'sort') (null: none)";s:11:"phpdoc_name";s:9:"sort_name";}i:4;a:7:{s:4:"name";s:4:"hash";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:31:"URL hash component (null: none)";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:14:"results_sorter";s:11:"description";s:38:"Get the Tempcode for a results sorter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The results sorter";}}s:13:"results_entry";a:6:{s:8:"filename";s:35:"sources/templates_results_table.php";s:10:"parameters";a:4:{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:79:"The array of values that make up this entry (of Tempcode or string, or mixture)";s:11:"phpdoc_name";s:6:"values";}i:1;a:5:{s:4:"name";s:11:"auto_escape";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to automatically escape each entry so that it cannot contain HTML";s:11:"phpdoc_name";s:11:"auto_escape";}i:2;a:7:{s:4:"name";s:6:"tplset";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 template set to use (null: default)";s:11:"phpdoc_name";s:6:"tplset";}i:3;a:7:{s:4:"name";s:4:"guid";s:7:"default";s:32:"9e340dd14173c7320b57243d607718ab";s:11:"default_raw";s:34:"'9e340dd14173c7320b57243d607718ab'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"GUID to pass to template";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:13:"results_entry";s:11:"description";s:172:"Get the Tempcode for a results entry. You would gather together the outputs of several of these functions, then put them in as the $fields in a results_table function call.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The generated entry";}}s:19:"results_field_title";a:6:{s:8:"filename";s:35:"sources/templates_results_table.php";s:10:"parameters";a:5:{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:70:"The array of field titles that define the entries in the results table";s:11:"phpdoc_name";s:6:"values";}i:1;a:7:{s:4:"name";s:9:"sortables";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:122:"A map of sortable code (usually, db field names), to strings giving the human name for the sort order (null: no sortables)";s:11:"phpdoc_name";s:9:"sortables";}i:2;a:7:{s:4:"name";s:11:"order_param";s:7:"default";s:4:"sort";s:11:"default_raw";s:6:"'sort'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The parameter name used to store our sortable";s:11:"phpdoc_name";s:11:"order_param";}i:3;a:7:{s:4:"name";s:16:"current_ordering";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:46:"The current ordering ("$sortable $sort_order")";s:11:"phpdoc_name";s:16:"current_ordering";}i:4;a:7:{s:4:"name";s:4:"guid";s:7:"default";s:32:"fbcaf8b021e3939bfce1dce9ff8ed63a";s:11:"default_raw";s:34:"'fbcaf8b021e3939bfce1dce9ff8ed63a'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"GUID to pass to template";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:19:"results_field_title";s:11:"description";s:149:"Get the Tempcode for a results table title row. You would take the output of this, and feed it in as $fields_title, in a results_table function call.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The generated title";}}s:14:"init__temporal";a:5:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"init__temporal";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:22:"display_seconds_period";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"seconds";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"Number of seconds";s:11:"phpdoc_name";s:7:"seconds";}}s:4:"name";s:22:"display_seconds_period";s:11:"description";s:62:"Display a time period of seconds in a tidy human-readable way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"Human-readable period.";}}s:19:"display_time_period";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"seconds";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"Number of seconds";s:11:"phpdoc_name";s:7:"seconds";}}s:4:"name";s:19:"display_time_period";s:11:"description";s:51:"Display a time period in a tidy human-readable way.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"Human-readable period.";}}s:18:"make_locale_filter";a:5:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"make_locale_filter";s:11:"description";s:76:"Set up the locale filter array from the terse language string specifying it.";s:5:"flags";a:0:{}}s:19:"get_server_timezone";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_server_timezone";s:11:"description";s:47:"Get the timezone the server is configured with.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"Server timezone in "boring" format.";}}s:17:"get_site_timezone";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_site_timezone";s:11:"description";s:40:"Get the timezone the site is running on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:33:"Site timezone in "boring" format.";}}s:18:"get_users_timezone";a:6:{s:8:"filename";s:20:"sources/temporal.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:64:"Member for which the date is being rendered (null: current user)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:18:"get_users_timezone";s:11:"description";s:22:"Get a user's timezone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:34:"Users timezone in "boring" format.";}}s:42:"convert_timezone_offset_to_formal_timezone";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"offset";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:16:"Timezone offset.";s:11:"phpdoc_name";s:6:"offset";}}s:4:"name";s:42:"convert_timezone_offset_to_formal_timezone";s:11:"description";s:56:"Given a timezone offset, make it into a formal timezone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:34:"Users timezone in "boring" format.";}}s:19:"utctime_to_usertime";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"timestamp";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:27:"Input timestamp (null: now)";s:11:"phpdoc_name";s:9:"timestamp";}i:1;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:66:"Member for which the date is being rendered (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"utctime_to_usertime";s:11:"description";s:388:"Convert a UTC timestamp to a user timestamp. The user timestamp should not be pumped through get_timezoned_date as this already performs the conversions internally.What complicate understanding of matters is that "user time" is not the timestamp that would exist on a user's PC, as all timestamps are meant to be stored in UTC. "user time" is offsetted to compensate, a virtual construct.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:16:"Output timestamp";}}s:19:"usertime_to_utctime";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"timestamp";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:27:"Input timestamp (null: now)";s:11:"phpdoc_name";s:9:"timestamp";}i:1;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:66:"Member for which the date is being rendered (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"usertime_to_utctime";s:11:"description";s:343:"Convert a user timestamp to a UTC timestamp. This is not a function to use much- you probably want utctime_to_usertime.What complicate understanding of matters is that "user time" is not the timestamp that would exist on a user's PC, as all timestamps are meant to be stored in UTC. "user time" is offsetted to compensate, a virtual construct.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:16:"Output timestamp";}}s:12:"cms_strftime";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"format";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The formatting string.";s:11:"phpdoc_name";s:6:"format";}i:1;a:7:{s:4:"name";s:9:"timestamp";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:77:"The timestamp (null: now). Assumed to already be timezone-shifted as required";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:12:"cms_strftime";s:11:"description";s:137:"Format a local time/date according to locale settings. Combines best features of 'strftime' and 'date'.%l is 'g' in date%o is 'S' in date";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The formatted string.";}}s:27:"get_timezoned_date_tempcode";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:2:{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:15:"Input timestamp";s:11:"phpdoc_name";s:9:"timestamp";}i:1;a:7:{s:4:"name";s:12:"include_time";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to include the time in the output";s:11:"phpdoc_name";s:12:"include_time";}}s:4:"name";s:27:"get_timezoned_date_tempcode";s:11:"description";s:100:"Similar to get_timezoned_date, except works via Tempcode so is cache-safe for relative date display.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Formatted time";}}s:18:"get_timezoned_date";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:6:{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:15:"Input timestamp";s:11:"phpdoc_name";s:9:"timestamp";}i:1;a:7:{s:4:"name";s:12:"include_time";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to include the time in the output";s:11:"phpdoc_name";s:12:"include_time";}i:2;a:7:{s:4:"name";s:7:"verbose";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether to make this a verbose date (longer than usual)";s:11:"phpdoc_name";s:7:"verbose";}i:3;a:7:{s:4:"name";s:8:"utc_time";s:7:"default";s:13:"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 work in UTC time";s:11:"phpdoc_name";s:8:"utc_time";}i:4;a:7:{s:4:"name";s:22:"avoid_contextual_dates";s:7:"default";s:13:"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 contextual dates will be avoided";s:11:"phpdoc_name";s:22:"avoid_contextual_dates";}i:5;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:66:"Member for which the date is being rendered (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:18:"get_timezoned_date";s:11:"description";s:60:"Get a nice formatted date from the specified Unix timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Formatted time";}}s:13:"locale_filter";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"ret";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Tainted string";s:11:"phpdoc_name";s:3:"ret";}}s:4:"name";s:13:"locale_filter";s:11:"description";s:421:"Filter locale-tainted strings through the locale filter.Let's pretend a user's operating system doesn't fully support they're locale. They have a nice language pack, but whenever the O.S. is asked for dates in the chosen locale, it puts month names in English instead. The locale_filter function is used to cleanup these problems. It does a simple set of string replaces, as defined by the 'locale_subst' language string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Filtered string";}}s:18:"get_timezoned_time";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:4:{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:15:"Input timestamp";s:11:"phpdoc_name";s:9:"timestamp";}i:1;a:7:{s:4:"name";s:22:"avoid_contextual_dates";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:145:"Whether contextual times will be avoided. Note that we don't currently use contextual (relative) times. This parameter may be used in the future.";s:11:"phpdoc_name";s:22:"avoid_contextual_dates";}i:2;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:66:"Member for which the time is being rendered (null: current member)";s:11:"phpdoc_name";s:6:"member";}i:3;a:7:{s:4:"name";s:8:"utc_time";s:7:"default";s:13:"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 work in UTC time";s:11:"phpdoc_name";s:8:"utc_time";}}s:4:"name";s:18:"get_timezoned_time";s:11:"description";s:60:"Get a nice formatted time from the specified Unix timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Formatted time";}}s:15:"post_param_date";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"stub";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:88:"The stub of the parameter name (stub_year, stub_month, stub_day, stub_hour, stub_minute)";s:11:"phpdoc_name";s:4:"stub";}i:1;a:7:{s:4:"name";s:8:"get_also";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to allow over get parameters also";s:11:"phpdoc_name";s:8:"get_also";}i:2;a:7:{s:4:"name";s:22:"do_timezone_conversion";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to do timezone conversion";s:11:"phpdoc_name";s:22:"do_timezone_conversion";}}s:4:"name";s:15:"post_param_date";s:11:"description";s:80:"Sanitise a POST inputted date, and get the Unix timestamp for the inputted date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:58:"The timestamp of the date (null: no input date was chosen)";}}s:7:"tz_time";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:8:"UTC time";s:11:"phpdoc_name";s:4:"time";}i:1;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Timezone (boring style)";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:7:"tz_time";s:11:"description";s:69:"For a UTC timestamp, find the equivalent virtualised local timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:22:"Virtualised local time";}}s:17:"get_timezone_list";a:6:{s:8:"filename";s:20:"sources/temporal.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_timezone_list";s:11:"description";s:24:"Get a list of timezones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:105:"Timezone (map between boring-style and human-readable name). Sorted in offset order then likelihood orde.";}}s:23:"make_nice_timezone_name";a:6:{s:8:"filename";s:21:"sources/temporal2.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:11:"Boring name";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:23:"make_nice_timezone_name";s:11:"description";s:105:"Turn a boring timezone name into the pretty shortened list of ones Microsoft uses and others now use too.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"Nice name";}}s:18:"_get_timezone_list";a:6:{s:8:"filename";s:21:"sources/temporal2.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"_get_timezone_list";s:11:"description";s:24:"Get a list of timezones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:105:"Timezone (map between boring-style and human-readable name). Sorted in offset order then likelihood orde.";}}s:26:"post_param_date_components";a:6:{s:8:"filename";s:21:"sources/temporal2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"stub";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:88:"The stub of the parameter name (stub_year, stub_month, stub_day, stub_hour, stub_minute)";s:11:"phpdoc_name";s:4:"stub";}i:1;a:7:{s:4:"name";s:4:"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:25:"Default year (null: none)";s:11:"phpdoc_name";s:4:"year";}i:2;a:7:{s:4:"name";s:5:"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:26:"Default month (null: none)";s:11:"phpdoc_name";s:5:"month";}i:3;a:7:{s:4:"name";s:3:"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:24:"Default day (null: none)";s:11:"phpdoc_name";s:3:"day";}i:4;a:7:{s:4:"name";s:8:"get_also";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to allow over get parameters also";s:11:"phpdoc_name";s:8:"get_also";}}s:4:"name";s:26:"post_param_date_components";s:11:"description";s:63:"Sanitise a POST inputted date, and get the dat/time components.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:24:"The date/time components";}}s:16:"_post_param_date";a:6:{s:8:"filename";s:21:"sources/temporal2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"stub";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:88:"The stub of the parameter name (stub_year, stub_month, stub_day, stub_hour, stub_minute)";s:11:"phpdoc_name";s:4:"stub";}i:1;a:7:{s:4:"name";s:8:"get_also";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to allow over get parameters also";s:11:"phpdoc_name";s:8:"get_also";}i:2;a:7:{s:4:"name";s:22:"do_timezone_conversion";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to do timezone conversion";s:11:"phpdoc_name";s:22:"do_timezone_conversion";}}s:4:"name";s:16:"_post_param_date";s:11:"description";s:80:"Sanitise a POST inputted date, and get the Unix timestamp for the inputted date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?TIME";s:11:"description";s:58:"The timestamp of the date (null: no input date was chosen)";}}s:20:"_find_text_file_path";a:6:{s:8:"filename";s:21:"sources/textfiles.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The file name (without .txt)";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:54:"The language to load from (null: none) (blank: search)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:20:"_find_text_file_path";s:11:"description";s:31:"Helper function for *_text_file";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The path to the file";}}s:14:"read_text_file";a:6:{s:8:"filename";s:21:"sources/textfiles.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The file name (without .txt)";s:11:"phpdoc_name";s:8:"codename";}i:1;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:14:"?LANGUAGE_NAME";s:11:"description";s:54:"The language to load from (null: none) (blank: search)";s:11:"phpdoc_name";s:4:"lang";}i:2;a:7:{s:4:"name";s:13:"missing_blank";s:7:"default";s:13:"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 tolerate missing files";s:11:"phpdoc_name";s:13:"missing_blank";}}s:4:"name";s:14:"read_text_file";s:11:"description";s:42:"Read a text file, using the _custom system";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The file contents";}}s:15:"write_text_file";a:5:{s:8:"filename";s:21:"sources/textfiles.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The file name (without .txt)";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:54:"The language to write for (null: none) (blank: search)";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The data to write";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:15:"write_text_file";s:11:"description";s:43:"Write a text file, using the _custom system";s:5:"flags";a:0:{}}s:12:"init__themes";a:5:{s:8:"filename";s:18:"sources/themes.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__themes";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"find_theme_image";a:6:{s:8:"filename";s:18:"sources/themes.php";s:10:"parameters";a:7:{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:18:"The theme image ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"silent_fail";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether to silently fail (i.e. not give out an error message when a theme image cannot be found)";s:11:"phpdoc_name";s:11:"silent_fail";}i:2;a:7:{s:4:"name";s:11:"leave_local";s:7:"default";s:13:"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 leave URLs as relative local URLs";s:11:"phpdoc_name";s:11:"leave_local";}i:3;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:50:"The theme to search in (null: users current theme)";s:11:"phpdoc_name";s:5:"theme";}i:4;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:14:"?LANGUAGE_NAME";s:11:"description";s:57:"The language to search for (null: users current language)";s:11:"phpdoc_name";s:4:"lang";}i:5;a:7:{s:4:"name";s:2:"db";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:41:"The database to use (null: site database)";s:11:"phpdoc_name";s:2:"db";}i:6;a:7:{s:4:"name";s:9:"pure_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:54:"Whether to only search the default 'images' filesystem";s:11:"phpdoc_name";s:9:"pure_only";}}s:4:"name";s:16:"find_theme_image";s:11:"description";s:124:"Find the URL to the theme image of the specified ID. It searches various priorities, including language and theme overrides.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL found (blank: not found)";}}s:22:"load_theme_image_cache";a:5:{s:8:"filename";s:18:"sources/themes.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:84:"The database to load from (used for theme images running across multi-site-networks)";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:8:"db_place";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:105:"The internal name of the database to load from (used for theme images running across multi-site-networks)";s:11:"phpdoc_name";s:8:"db_place";}i:2;a:5:{s:4:"name";s:10:"true_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:6:"Theme0";s:11:"phpdoc_name";s:10:"true_theme";}i:3;a:5:{s:4:"name";s:9:"true_lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:8:"Language";s:11:"phpdoc_name";s:9:"true_lang";}}s:4:"name";s:22:"load_theme_image_cache";s:11:"description";s:26:"Load up theme image cache.";s:5:"flags";a:0:{}}s:10:"cdn_filter";a:6:{s:8:"filename";s:18:"sources/themes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"url_path";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:9:"Input URL";s:11:"phpdoc_name";s:8:"url_path";}}s:4:"name";s:10:"cdn_filter";s:11:"description";s:39:"Filter a path so it runs through a CDN.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:10:"Output URL";}}s:16:"_search_img_file";a:6:{s:8:"filename";s:18:"sources/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:9:"The theme";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:14:"?LANGUAGE_NAME";s:11:"description";s:62:"The language (null: try generally, under no specific language)";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_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:3:"dir";s:7:"default";s:6:"images";s:11:"default_raw";s:8:"'images'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"Directory to search";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:16:"_search_img_file";s:11:"description";s:74:"Search for a specified image file within a theme for a specified language.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:47:"The URL path to the image (null: was not found)";}}s:19:"export_theme_images";a:5:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"export_theme_images";s:11:"description";s:62:"Export neatly named dump of all theme images for active theme.";s:5:"flags";a:0:{}}s:14:"autoprobe_cdns";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"autoprobe_cdns";s:11:"description";s:30:"Try and find some CDNs to use.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"List of CDNs";}}s:23:"actual_edit_theme_image";a:5:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"old_id";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The current theme image ID";s:11:"phpdoc_name";s:6:"old_id";}i:1;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: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:58:"The language the theme image is for (blank: all languages)";s:11:"phpdoc_name";s:4:"lang";}i:3;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The new theme image ID";s:11:"phpdoc_name";s:2:"id";}i:4;a:5:{s:4:"name";s:4:"path";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";}i:5;a:7:{s:4:"name";s:5:"quick";s:7:"default";s:13:"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:"Whether to avoid cleanup, etc";s:11:"phpdoc_name";s:5:"quick";}}s:4:"name";s:23:"actual_edit_theme_image";s:11:"description";s:19:"Edit a theme image.";s:5:"flags";a:0:{}}s:8:"css_preg";a:6:{s:8:"filename";s:19:"sources/themes2.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:65:"List of found regular expression matches (only index 0 relevant).";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:8:"css_preg";s:11:"description";s:63:"Replace colour codes with references (helper callback function)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Replacement.";}}s:16:"actual_add_theme";a:5:{s:8:"filename";s:19:"sources/themes2.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:7:"ID_TEXT";s:11:"description";s:14:"The theme name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:16:"actual_add_theme";s:11:"description";s:12:"Add a theme.";s:5:"flags";a:0:{}}s:22:"actual_add_theme_image";a:5:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:5:{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:5:{s:4:"name";s:2:"id";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:5:{s:4:"name";s:4:"path";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";}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:44:"Whether to allow failure without bombing out";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:22:"actual_add_theme_image";s:11:"description";s:18:"Add a theme image.";s:5:"flags";a:0:{}}s:25:"post_param_theme_img_code";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:6:{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:23:"The type of theme image";s:11:"phpdoc_name";s:4:"type";}i:1;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:26:"Whether a code is required";s:11:"phpdoc_name";s:8:"required";}i:2;a:7:{s:4:"name";s:10:"field_file";s:7:"default";s:4:"file";s:11:"default_raw";s:6:"'file'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"Form field for uploading";s:11:"phpdoc_name";s:10:"field_file";}i:3;a:7:{s:4:"name";s:12:"field_choose";s:7:"default";s:14:"theme_img_code";s:11:"default_raw";s:16:"'theme_img_code'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Form field for choosing";s:11:"phpdoc_name";s:12:"field_choose";}i:4;a:7:{s:4:"name";s:2:"db";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:41:"Database connection (null: site database)";s:11:"phpdoc_name";s:2:"db";}i:5;a:7:{s:4:"name";s:9:"upload_to";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:62:"Where to upload the theme images to (null: something sensible)";s:11:"phpdoc_name";s:9:"upload_to";}}s:4:"name";s:25:"post_param_theme_img_code";s:11:"description";s:262:"A theme image has been passed through by POST, either as a file (a new theme image), or as a reference to an existing one. Get the image code from the POST data.Note that post_param_image is a more comprehensive function, if you accept other types of inputs too.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The (possibly randomised) theme image code";}}s:16:"post_param_image";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:7:{i:0;a:7:{s:4:"name";s:4:"name";s:7:"default";s:5:"image";s:11:"default_raw";s:7:"'image'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:67:"Form field prefix (input type suffixes will be added automatically)";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:9:"upload_to";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:66:"Where to upload to (null: the correct place for $theme_image_type)";s:11:"phpdoc_name";s:9:"upload_to";}i:2;a:7:{s:4:"name";s:16:"theme_image_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 directory of theme images to store under (null: do not support theme images)";s:11:"phpdoc_name";s:16:"theme_image_type";}i:3;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether an image is required";s:11:"phpdoc_name";s:8:"required";}i:4;a:7:{s:4:"name";s:7:"is_edit";s:7:"default";s:13:"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 this is an edit operation";s:11:"phpdoc_name";s:7:"is_edit";}i:5;a:7:{s:4:"name";s:8:"filename";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:55:"Pass the filename back by reference (null: do not pass)";s:11:"phpdoc_name";s:8:"filename";}i:6;a:7:{s:4:"name";s:9:"thumb_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:85:"Pass the thumbnail back by reference (null: do not pass & do not collect a thumbnail)";s:11:"phpdoc_name";s:9:"thumb_url";}}s:4:"name";s:16:"post_param_image";s:11:"description";s:227:"An image has been passed through by POST, either as a file (a new upload), a url, a reference to an existing theme image, or as a filedump reference.Used with form_input_upload_multi_source.Get the image URL from the POST data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:130:"The URL (either to an independent upload, or the theme image, or a filedump URL) (null: leave alone, when doing an edit operation)";}}s:16:"resize_rep_image";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"rep_image";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:13:"The rep image";s:11:"phpdoc_name";s:9:"rep_image";}}s:4:"name";s:16:"resize_rep_image";s:11:"description";s:42:"Size down a category representative image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:13:"The rep image";}}s:18:"find_images_do_dir";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:3:{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:9:"The theme";s:11:"phpdoc_name";s:5:"theme";}i:1;a:5:{s:4:"name";s:6:"subdir";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The subdirectory to search under";s:11:"phpdoc_name";s:6:"subdir";}i:2;a:5:{s:4:"name";s:5:"langs";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:121:"A map (lang=>true) of the languages in the system, so the codes may be filtered out of the image codes in our result list";s:11:"phpdoc_name";s:5:"langs";}}s:4:"name";s:18:"find_images_do_dir";s:11:"description";s:121:"Recursively find theme images under the specified details. Does not find custom theme images, as it doesn't check the DB.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"A map, theme-image-code=>URL";}}s:22:"get_all_image_ids_type";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:7:{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:40:"The type of image (e.g. 'cns_emoticons')";s:11:"phpdoc_name";s:4:"type";}i:1;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:78:"Whether to search recursively; i.e. in subdirectories of the type subdirectory";s:11:"phpdoc_name";s:7:"recurse";}i:2;a:7:{s:4:"name";s:2:"db";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:52:"The database connection to work over (null: site db)";s:11:"phpdoc_name";s:2:"db";}i:3;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:73:"The theme to search in, in addition to the default theme (null: no other)";s:11:"phpdoc_name";s:5:"theme";}i:4;a:7:{s:4:"name";s:9:"dirs_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:65:"Whether to only return directories (advanced option, rarely used)";s:11:"phpdoc_name";s:9:"dirs_only";}i:5;a:7:{s:4:"name";s:7:"db_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:71:"Whether to only return from the database (advanced option, rarely used)";s:11:"phpdoc_name";s:7:"db_only";}i:6;a:7:{s:4:"name";s:4:"skip";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:"The list of files/directories to skip (null: none)";s:11:"phpdoc_name";s:4:"skip";}}s:4:"name";s:22:"get_all_image_ids_type";s:11:"description";s:109:"Get all the image IDs (both already known, and those uncached) of a certain type (i.e. under a subdirectory).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"The list of image IDs";}}s:23:"_get_all_image_ids_type";a:5:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"ids";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:76:"The list of image IDs found so far. This list will be appended as we proceed";s:11:"phpdoc_name";s:3:"ids";}i:1;a:5:{s:4:"name";s:3:"dir";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:68:"The specific theme image subdirectory we are currently looking under";s:11:"phpdoc_name";s:3:"dir";}i:2;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"The type of image (e.g. 'cns_emoticons')";s:11:"phpdoc_name";s:4:"type";}i:3;a:5:{s:4:"name";s:7:"recurse";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether to search recursively; i.e. in subdirectories of the type subdirectory";s:11:"phpdoc_name";s:7:"recurse";}i:4;a:5:{s:4:"name";s:9:"dirs_only";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:65:"Whether to only return directories (advanced option, rarely used)";s:11:"phpdoc_name";s:9:"dirs_only";}i:5;a:5:{s:4:"name";s:4:"skip";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:37:"The list of files/directories to skip";s:11:"phpdoc_name";s:4:"skip";}}s:4:"name";s:23:"_get_all_image_ids_type";s:11:"description";s:109:"Get all the image IDs (both already known, and those uncached) of a certain type (i.e. under a subdirectory).";s:5:"flags";a:0:{}}s:21:"combo_get_image_paths";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"selected_path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"The currently selected image path (blank for none)";s:11:"phpdoc_name";s:13:"selected_path";}i:1;a:5:{s:4:"name";s:8:"base_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:49:"The base-URL to where we are searching for images";s:11:"phpdoc_name";s:8:"base_url";}i:2;a:5:{s:4:"name";s:9:"base_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:50:"The base-path to where we are searching for images";s:11:"phpdoc_name";s:9:"base_path";}}s:4:"name";s:21:"combo_get_image_paths";s:11:"description";s:83:"Get Tempcode for a radio list to choose an image from the image FILES in the theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The generated Tempcode";}}s:15:"get_image_paths";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"base_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:49:"The base-URL to where we are searching for images";s:11:"phpdoc_name";s:8:"base_url";}i:1;a:5:{s:4:"name";s:9:"base_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:50:"The base-path to where we are searching for images";s:11:"phpdoc_name";s:9:"base_path";}}s:4:"name";s:15:"get_image_paths";s:11:"description";s:97:"Search under a base path for image FILE URLs (not actually paths as function name would suggest).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"path->url map of found images";}}s:19:"get_all_image_codes";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"base_path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:50:"The base-path to where we are searching for images";s:11:"phpdoc_name";s:9:"base_path";}i:1;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:133:"The path to search under, relative to the base-path. This is not the same as the base-path, as we are cropping paths to the base-path";s:11:"phpdoc_name";s:12:"search_under";}i:2;a:7:{s:4:"name";s:7:"recurse";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to search recursively from the given directory";s:11:"phpdoc_name";s:7:"recurse";}}s:4:"name";s:19:"get_all_image_codes";s:11:"description";s:109:"Get all the themes image codes. THIS DOES NOT SEARCH THE DB - DO NOT USE UNLESS IT'S ON A PURE PACKAGED THEME";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"A list of image codes";}}s:34:"create_selection_list_theme_images";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:5:{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:53:"The currently selected image ID (null: none selected)";s:11:"phpdoc_name";s:2:"it";}i:1;a:7:{s:4:"name";s:6:"filter";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:86:"An SQL where clause (including the WHERE), that filters the query somehow (null: none)";s:11:"phpdoc_name";s:6:"filter";}i:2;a:7:{s:4:"name";s:5:"do_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:65:"Whether to show IDs as the list entry captions, rather than paths";s:11:"phpdoc_name";s:5:"do_id";}i:3;a:7:{s:4:"name";s:11:"include_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:72:"Whether to include images not yet used (i.e not in theme_images map yet)";s:11:"phpdoc_name";s:11:"include_all";}i:4;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:6:"string";s:11:"description";s:166:"Only include images under this path. Including a trailing slash unless you specifically want to filter allowing filename stubs as well as paths (blank: no limitation)";s:11:"phpdoc_name";s:5:"under";}}s:4:"name";s:34:"create_selection_list_theme_images";s:11:"description";s:70:"Get Tempcode for a dropdown to choose a theme from the themes present.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:45:"Tempcode for a list selection of theme images";}}s:28:"create_selection_list_themes";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:4:{i:0;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:58:"The theme to select by default (null: no specific default)";s:11:"phpdoc_name";s:5:"theme";}i:1;a:7:{s:4:"name";s:7:"no_rely";s:7:"default";s:13:"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 skip the 'rely on forums' entry";s:11:"phpdoc_name";s:7:"no_rely";}i:2;a:7:{s:4:"name";s:15:"show_everything";s:7:"default";s:13:"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 forget about permissions for this list";s:11:"phpdoc_name";s:15:"show_everything";}i:3;a:7:{s:4:"name";s:22:"default_message_string";s:7:"default";s:11:"RELY_FORUMS";s:11:"default_raw";s:13:"'RELY_FORUMS'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:49:"The language string to use for the default answer";s:11:"phpdoc_name";s:22:"default_message_string";}}s:4:"name";s:28:"create_selection_list_themes";s:11:"description";s:35:"Get a UI list for choosing a theme.";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:"find_all_themes";a:6:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:12:"full_details";s:7:"default";s:13:"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 gather full details for each theme";s:11:"phpdoc_name";s:12:"full_details";}}s:4:"name";s:15:"find_all_themes";s:11:"description";s:44:"Get an array listing all the themes present.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:91:"A map of all themes (name=>title) OR if requested a map of theme name to full theme details";}}s:19:"tidy_theme_img_code";a:5:{s:8:"filename";s:19:"sources/themes2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:38:"The new theme image (null: no new one)";s:11:"phpdoc_name";s:3:"new";}i:1;a:5:{s:4:"name";s:3:"old";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"The old theme image we might be tidying up";s:11:"phpdoc_name";s:3:"old";}i:2;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Table to check against";s:11:"phpdoc_name";s:5:"table";}i:3;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"Field in table";s:11:"phpdoc_name";s:5:"field";}i:4;a:7:{s:4:"name";s:2:"db";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:58:"Database connection to check against (null: site database)";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:19:"tidy_theme_img_code";s:11:"description";s:99:"Delete a theme image used for a resource that was added, but only if the theme image is now unused.";s:5:"flags";a:0:{}}s:22:"tempcode_tester_script";a:5:{s:8:"filename";s:19:"sources/themes3.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tempcode_tester_script";s:11:"description";s:40:"AJAX script for rendering some Tempcode.";s:5:"flags";a:0:{}}s:25:"actual_delete_theme_image";a:5:{s:8:"filename";s:19:"sources/themes3.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:10:"SHORT_TEXT";s:11:"description";s:18:"The theme image ID";s:11:"phpdoc_name";s:2:"id";}i:1;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:41:"The theme to delete in (null: all themes)";s:11:"phpdoc_name";s:5:"theme";}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:14:"?LANGUAGE_NAME";s:11:"description";s:70:"The language to delete in (null: all languages) (blank: all languages)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:25:"actual_delete_theme_image";s:11:"description";s:21:"Delete a theme image.";s:5:"flags";a:0:{}}s:18:"regen_theme_images";a:5:{s:8:"filename";s:19:"sources/themes3.php";s:10:"parameters";a:3:{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:29:"The theme we're searching in.";s:11:"phpdoc_name";s:5:"theme";}i:1;a:7:{s:4:"name";s:5:"langs";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:60:"A map of languages (lang=>true) (null: find it in-function).";s:11:"phpdoc_name";s:5:"langs";}i:2;a:7:{s:4:"name";s:12:"target_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:50:"The theme we're storing in (null: same as $theme).";s:11:"phpdoc_name";s:12:"target_theme";}}s:4:"name";s:18:"regen_theme_images";s:11:"description";s:53:"Regenerate all the theme image paths in the database.";s:5:"flags";a:0:{}}s:20:"cleanup_theme_images";a:5:{s:8:"filename";s:19:"sources/themes3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"old_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:40:"The URL to the theme image being deleted";s:11:"phpdoc_name";s:7:"old_url";}}s:4:"name";s:20:"cleanup_theme_images";s:11:"description";s:54:"Delete uploaded theme image if not tied into anything.";s:5:"flags";a:0:{}}s:19:"actual_rename_theme";a:5:{s:8:"filename";s:19:"sources/themes3.php";s:10:"parameters";a:2:{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 original theme name";s:11:"phpdoc_name";s:5:"theme";}i:1;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The new theme name";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:19:"actual_rename_theme";s:11:"description";s:15:"Rename a theme.";s:5:"flags";a:0:{}}s:17:"actual_copy_theme";a:5:{s:8:"filename";s:19:"sources/themes3.php";s:10:"parameters";a:2:{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 original theme name";s:11:"phpdoc_name";s:5:"theme";}i:1;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The copy's theme name";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:17:"actual_copy_theme";s:11:"description";s:13:"Copy a theme.";s:5:"flags";a:0:{}}s:19:"actual_delete_theme";a:5:{s:8:"filename";s:19:"sources/themes3.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:14:"The theme name";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:19:"actual_delete_theme";s:11:"description";s:15:"Delete a theme.";s:5:"flags";a:0:{}}s:17:"init__themewizard";a:5:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"init__themewizard";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:34:"load_themewizard_params_from_theme";a:5:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:2:{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:14:"The theme name";s:11:"phpdoc_name";s:5:"theme";}i:1;a:7:{s:4:"name";s:22:"guess_images_if_needed";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether we suspect the theme might not be well defined";s:11:"phpdoc_name";s:22:"guess_images_if_needed";}}s:4:"name";s:34:"load_themewizard_params_from_theme";s:11:"description";s:83:"Given a source theme name, configure the theme wizard for theme generation from it.";s:5:"flags";a:0:{}}s:15:"find_theme_seed";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:2:{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:14:"The theme name";s:11:"phpdoc_name";s:5:"theme";}i:1;a:7:{s:4:"name";s:14:"no_easy_anchor";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:105:"Whether we can't assume the theme has any Composr default colour information defined, if not in theme.ini";s:11:"phpdoc_name";s:14:"no_easy_anchor";}}s:4:"name";s:15:"find_theme_seed";s:11:"description";s:25:"Find the seed of a theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The seed colour";}}s:15:"find_theme_dark";a:6:{s:8:"filename";s:23:"sources/themewizard.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:14:"The theme name";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:15:"find_theme_dark";s:11:"description";s:29:"Find whether a theme is dark.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether the theme is dark";}}s:36:"find_theme_image_themewizard_preview";a:6:{s:8:"filename";s:23:"sources/themewizard.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:"ID_TEXT";s:11:"description";s:18:"The theme image ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"silent_fail";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:96:"Whether to silently fail (i.e. not give out an error message when a theme image cannot be found)";s:11:"phpdoc_name";s:11:"silent_fail";}}s:4:"name";s:36:"find_theme_image_themewizard_preview";s:11:"description";s:102:"Called by find_theme_image to allow on-the-fly previewing of what theme wizard output would look like.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:79:"URL to image (null: use standard one, this one is not theme wizard influenced).";}}s:13:"generate_logo";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:7:{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:14:"The site name.";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:11:"font_choice";s:7:"default";s:4:"Vera";s:11:"default_raw";s:6:"'Vera'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The font name (in data/fonts).";s:11:"phpdoc_name";s:11:"font_choice";}i:2;a:7:{s:4:"name";s:16:"logo_theme_image";s:7:"default";s:20:"logo/default_logos/1";s:11:"default_raw";s:22:"'logo/default_logos/1'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The logo theme image.";s:11:"phpdoc_name";s:16:"logo_theme_image";}i:3;a:7:{s:4:"name";s:22:"background_theme_image";s:7:"default";s:32:"logo/default_backgrounds/banner1";s:11:"default_raw";s:34:"'logo/default_backgrounds/banner1'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The background theme image.";s:11:"phpdoc_name";s:22:"background_theme_image";}i:4;a:7:{s:4:"name";s:3:"raw";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:103:"Whether to output the logo to the browser, destroy then image, and exit the script (i.e. never returns)";s:11:"phpdoc_name";s:3:"raw";}i:5;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:7:"?string";s:11:"description";s:72:"The theme to use the logo template from (null: default root zone theme).";s:11:"phpdoc_name";s:5:"theme";}i:6;a:7:{s:4:"name";s:18:"standalone_version";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:80:"Whether we are generating the standalone version (smaller, used in e-mails etc).";s:11:"phpdoc_name";s:18:"standalone_version";}}s:4:"name";s:13:"generate_logo";s:11:"description";s:34:"Generate a logo from the template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"resource";s:11:"description";s:19:"The image resource.";}}s:10:"make_theme";a:5:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:10:"theme_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"Name of the theme.";s:11:"phpdoc_name";s:10:"theme_name";}i:1;a:5:{s:4:"name";s:12:"source_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The theme it's being generated from";s:11:"phpdoc_name";s:12:"source_theme";}i:2;a:6:{s:4:"name";s:9:"algorithm";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The algorithm to use";s:11:"phpdoc_name";s:9:"algorithm";s:3:"set";s:13:"equations hsv";}i:3;a:5:{s:4:"name";s:4:"seed";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Seed colour to use.";s:11:"phpdoc_name";s:4:"seed";}i:4;a:5:{s:4:"name";s:3:"use";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to use the theme immediately.";s:11:"phpdoc_name";s:3:"use";}i:5;a:7:{s:4:"name";s:4:"dark";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:51:"Whether it will be a dark theme (null: autodetect).";s:11:"phpdoc_name";s:4:"dark";}i:6;a:7:{s:4:"name";s:11:"inherit_css";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether to inherit the CSS, for easier theme upgrading.";s:11:"phpdoc_name";s:11:"inherit_css";}}s:4:"name";s:10:"make_theme";s:11:"description";s:50:"Make a theme. Note that this will trigger the AFM.";s:5:"flags";a:0:{}}s:18:"themewizard_script";a:5:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"themewizard_script";s:11:"description";s:49:"Output a theme component straight to the browser.";s:5:"flags";a:0:{}}s:15:"calculate_theme";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:4:"seed";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Colour seed.";s:11:"phpdoc_name";s:4:"seed";}i:1;a:5:{s:4:"name";s:12:"source_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The theme it's being generated from";s:11:"phpdoc_name";s:12:"source_theme";}i:2;a:6:{s:4:"name";s:9:"algorithm";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The algorithm to use";s:11:"phpdoc_name";s:9:"algorithm";s:3:"set";s:13:"equations hsv";}i:3;a:7:{s:4:"name";s:4:"show";s:7:"default";s:7:"colours";s:11:"default_raw";s:9:"'colours'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:59:"What to generate ('colours', or the name of a theme image).";s:11:"phpdoc_name";s:4:"show";}i:4;a:7:{s:4:"name";s:4:"dark";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:51:"Whether it will be a dark theme (null: autodetect).";s:11:"phpdoc_name";s:4:"dark";}i:5;a:7:{s:4:"name";s:7:"colours";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:38:"The colour map to use (null: compute).";s:11:"phpdoc_name";s:7:"colours";}i:6;a:7:{s:4:"name";s:9:"landscape";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:"The computed colour landscape to use (null: compute).";s:11:"phpdoc_name";s:9:"landscape";}i:7;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:14:"?LANGUAGE_NAME";s:11:"description";s:40:"The language to work in (null: default).";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:15:"calculate_theme";s:11:"description";s:64:"Calculate some component relating to a theme from a colour seed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:78:"Image resource OR A pair: extended map of colours, colour expression landscape";}}s:29:"calculate_dynamic_css_colours";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"colours";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Map of colours.";s:11:"phpdoc_name";s:7:"colours";}i:1;a:5:{s:4:"name";s:12:"source_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The theme it's being generated from";s:11:"phpdoc_name";s:12:"source_theme";}}s:4:"name";s:29:"calculate_dynamic_css_colours";s:11:"description";s:93:"Augment an array of CSS colours with colours that are derived actually inside the CSS-sheets.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"A pair: extended map of colours, colour expression landscape";}}s:27:"parse_css_colour_expression";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"textual";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Textual expression.";s:11:"phpdoc_name";s:7:"textual";}}s:4:"name";s:27:"parse_css_colour_expression";s:11:"description";s:64:"Convert a textual CSS colour expression into an expression tree.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"Expression tree (null: not real).";}}s:28:"_parse_css_colour_expression";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:1:{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:7:"Tokens.";s:11:"phpdoc_name";s:6:"tokens";}}s:4:"name";s:28:"_parse_css_colour_expression";s:11:"description";s:50:"Convert CSS colour tokens into an expression tree.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:30:"Expression tree (null: error).";}}s:29:"execute_css_colour_expression";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"expression";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:41:"Expression tree (array) OR leaf (string).";s:11:"phpdoc_name";s:10:"expression";}i:1;a:5:{s:4:"name";s:7:"colours";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"Known colours at this point.";s:11:"phpdoc_name";s:7:"colours";}}s:4:"name";s:29:"execute_css_colour_expression";s:11:"description";s:30:"Execute CSS colour expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:74:"RRGGBB colour or possibly just a number (null: answer cannot be computed).";}}s:10:"fix_colour";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:36:"Colour component (float or integer).";s:11:"phpdoc_name";s:1:"x";}i:1;a:7:{s:4:"name";s:3:"hue";s:7:"default";s:13:"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:"Whether this is hue (meaning it cycles around)";s:11:"phpdoc_name";s:3:"hue";}}s:4:"name";s:10:"fix_colour";s:11:"description";s:72:"Make sure a colour component fits within the necessary range (0<=x<256).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:29:"Constrained colour component.";}}s:10:"rgb_to_hsv";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"rgb";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"RRGGBB colour.";s:11:"phpdoc_name";s:3:"rgb";}}s:4:"name";s:10:"rgb_to_hsv";s:11:"description";s:168:"Convert an RGB colour to HSV colour components. Based on publicly distributed code fragments which were themselves based on others: reasonably assumed as public domain.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"Triplet of (0-255) components: H, S, V";}}s:10:"hsv_to_rgb";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:1:"h";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:11:"H component";s:11:"phpdoc_name";s:1:"h";}i:1;a:5:{s:4:"name";s:1:"s";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:11:"S component";s:11:"phpdoc_name";s:1:"s";}i:2;a:5:{s:4:"name";s:1:"v";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:11:"V component";s:11:"phpdoc_name";s:1:"v";}}s:4:"name";s:10:"hsv_to_rgb";s:11:"description";s:168:"Convert HSV colour components to an RGB colour. Based on publicly distributed code fragments which were themselves based on others: reasonably assumed as public domain.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"RGB colour.";}}s:29:"theme_wizard_colours_to_sheet";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"sheet";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"CSS filename of source file.";s:11:"phpdoc_name";s:5:"sheet";}i:1;a:5:{s:4:"name";s:9:"landscape";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:69:"The colour expression landscape which we'll make substitutions using.";s:11:"phpdoc_name";s:9:"landscape";}i:2;a:5:{s:4:"name";s:12:"source_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The theme this is being generated from";s:11:"phpdoc_name";s:12:"source_theme";}i:3;a:6:{s:4:"name";s:9:"algorithm";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The algorithm to use";s:11:"phpdoc_name";s:9:"algorithm";s:3:"set";s:13:"equations hsv";}i:4;a:5:{s:4:"name";s:4:"seed";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The seed colour";s:11:"phpdoc_name";s:4:"seed";}}s:4:"name";s:29:"theme_wizard_colours_to_sheet";s:11:"description";s:51:"Rewrite some CSS code according to a CSS landscape.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The sheet";}}s:27:"theme_wizard_colours_to_css";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"contents";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"CSS to apply to.";s:11:"phpdoc_name";s:8:"contents";}i:1;a:5:{s:4:"name";s:9:"landscape";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:69:"The colour expression landscape which we'll make substitutions using.";s:11:"phpdoc_name";s:9:"landscape";}i:2;a:5:{s:4:"name";s:12:"source_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The theme this is being generated from";s:11:"phpdoc_name";s:12:"source_theme";}i:3;a:6:{s:4:"name";s:9:"algorithm";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The algorithm to use";s:11:"phpdoc_name";s:9:"algorithm";s:3:"set";s:13:"equations hsv";}i:4;a:5:{s:4:"name";s:4:"seed";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The seed colour";s:11:"phpdoc_name";s:4:"seed";}}s:4:"name";s:27:"theme_wizard_colours_to_css";s:11:"description";s:51:"Rewrite some CSS code according to a CSS landscape.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"The sheet";}}s:12:"re_hue_image";a:6:{s:8:"filename";s:23:"sources/themewizard.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:5:"mixed";s:11:"description";s:47:"The image path OR a preloaded GD image resource";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:4:"seed";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The colour code of our hue";s:11:"phpdoc_name";s:4:"seed";}i:2;a:5:{s:4:"name";s:12:"source_theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The theme this is being generated from";s:11:"phpdoc_name";s:12:"source_theme";}i:3;a:7:{s:4:"name";s:12:"also_s_and_v";s:7:"default";s:13:"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 also adjust the S and V components";s:11:"phpdoc_name";s:12:"also_s_and_v";}i:4;a:7:{s:4:"name";s:6:"invert";s:7:"default";s:13:"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:"Whether to invert the colours";s:11:"phpdoc_name";s:6:"invert";}}s:4:"name";s:12:"re_hue_image";s:11:"description";s:90:"Generate a theme image by converting an existing one to a new colour scheme via re-hueing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"resource";s:11:"description";s:9:"The image";}}s:17:"generate_gradient";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"top";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Colour for the top.";s:11:"phpdoc_name";s:3:"top";}i:1;a:5:{s:4:"name";s:6:"bottom";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"Colour for the bottom.";s:11:"phpdoc_name";s:6:"bottom";}}s:4:"name";s:17:"generate_gradient";s:11:"description";s:32:"Generate a gradient for a theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"resource";s:11:"description";s:9:"The image";}}s:25:"generate_recoloured_image";a:6:{s:8:"filename";s:23:"sources/themewizard.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:47:"The image path OR a preloaded GD image resource";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:13:"colour_a_orig";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The colour code of what we have as our "minor" colour (often a border colour)";s:11:"phpdoc_name";s:13:"colour_a_orig";}i:2;a:5:{s:4:"name";s:12:"colour_a_new";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The colour code of what we want as our "minor" colour (often a border colour)";s:11:"phpdoc_name";s:12:"colour_a_new";}i:3;a:5:{s:4:"name";s:14:"colour_b1_orig";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:87:"The colour code of what we have as our first major colour (often the only major colour)";s:11:"phpdoc_name";s:14:"colour_b1_orig";}i:4;a:5:{s:4:"name";s:13:"colour_b1_new";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:87:"The colour code of what we want as our first major colour (often the only major colour)";s:11:"phpdoc_name";s:13:"colour_b1_new";}i:5;a:7:{s:4:"name";s:14:"colour_b2_orig";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:137:"The colour code of what we have as our second major colour (the gradient target, at the bottom/right of the image) (null: not gradiented)";s:11:"phpdoc_name";s:14:"colour_b2_orig";}i:6;a:7:{s:4:"name";s:13:"colour_b2_new";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:137:"The colour code of what we want as our second major colour (the gradient target, at the bottom/right of the image) (null: not gradiented)";s:11:"phpdoc_name";s:13:"colour_b2_new";}i:7;a:8:{s:4:"name";s:18:"gradient_direction";s:7:"default";s:8:"vertical";s:11:"default_raw";s:10:"'vertical'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"The directional code for the gradient";s:11:"phpdoc_name";s:18:"gradient_direction";s:3:"set";s:19:"vertical horizontal";}i:8;a:7:{s:4:"name";s:19:"pixel_x_start_array";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:148:"An array that is used to limit where we do our conversion on. It specifies, for each y-offset, the x-offset we start from (null: no such limitation)";s:11:"phpdoc_name";s:19:"pixel_x_start_array";}i:9;a:7:{s:4:"name";s:15:"gradient_offset";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:87:"What the gradient assumed start-position will be offset by (in the gradient direction).";s:11:"phpdoc_name";s:15:"gradient_offset";}i:10;a:7:{s:4:"name";s:9:"end_array";s:7:"default";s:13:"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 the pixel_x_start array is actually an end array.";s:11:"phpdoc_name";s:9:"end_array";}}s:4:"name";s:25:"generate_recoloured_image";s:11:"description";s:113:"Generate a theme image by converting an existing one to a new colour scheme via intelligent blending correlation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"resource";s:11:"description";s:9:"The image";}}s:23:"get_active_support_user";a:6:{s:8:"filename";s:19:"sources/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_active_support_user";s:11:"description";s:94:"Find the active support user. Supports the "support_operator" option, for anonymising support.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:9:"Member ID";}}s:23:"find_ticket_assigned_to";a:6:{s:8:"filename";s:19:"sources/tickets.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"ticket_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Ticket ID";s:11:"phpdoc_name";s:9:"ticket_id";}}s:4:"name";s:23:"find_ticket_assigned_to";s:11:"description";s:33:"Find who a ticket is assigned to.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:51:"Map of assigned members (member ID to display name)";}}s:16:"build_types_list";a:6:{s:8:"filename";s:19:"sources/tickets.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:23:"selected_ticket_type_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:45:"The current selected ticket type (null: none)";s:11:"phpdoc_name";s:23:"selected_ticket_type_id";}i:1;a:7:{s:4:"name";s:27:"ticket_types_to_let_through";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:74:"List of ticket types to show regardless of access permissions (null: none)";s:11:"phpdoc_name";s:27:"ticket_types_to_let_through";}}s:4:"name";s:16:"build_types_list";s:11:"description";s:29:"Build a list of ticket types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:65:"A map between ticket types, and template-ready details about them";}}s:19:"check_ticket_access";a:6:{s:8:"filename";s:19:"sources/tickets.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:"string";s:11:"description";s:22:"The ticket ID to check";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"check_ticket_access";s:11:"description";s:117:"Checks the ticket ID is valid, and there is access for the current member to view it. Bombs out if there's a problem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:16:"The ticket owner";}}s:19:"get_ticket_forum_id";a:6:{s:8:"filename";s:19:"sources/tickets.php";s:10:"parameters";a:4:{i:0;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:10:"?AUTO_LINK";s:11:"description";s:31:"The member ID (null: no member)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"ticket_type_id";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:40:"The ticket type (null: all ticket types)";s:11:"phpdoc_name";s:14:"ticket_type_id";}i:2;a:7:{s:4:"name";s:6:"create";s:7:"default";s:13:"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:"Create the forum if it's missing";s:11:"phpdoc_name";s:6:"create";}i:3;a:7:{s:4:"name";s:21:"silent_error_handling";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to skip showing errors, returning null instead";s:11:"phpdoc_name";s:21:"silent_error_handling";}}s:4:"name";s:19:"get_ticket_forum_id";s:11:"description";s:128:"Get the forum ID for a given ticket type and member, taking the ticket_member_forums and ticket_type_forums optionsinto account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:26:"Forum ID (null: not found)";}}s:15:"is_ticket_forum";a:6:{s:8:"filename";s:19:"sources/tickets.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:10:"?AUTO_LINK";s:11:"description";s:41:"The forum ID (null: private topics forum)";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:15:"is_ticket_forum";s:11:"description";s:93:"Returns whether the given forum ID is for a ticket forum (subforum of the root ticket forum).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the given forum is a ticket forum";}}s:18:"get_ticket_details";a:6:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"ticket_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The ticket ID";s:11:"phpdoc_name";s:9:"ticket_id";}i:1;a:7:{s:4:"name";s:10:"hard_error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Exit with an error message if it cannot find the ticket";s:11:"phpdoc_name";s:10:"hard_error";}}s:4:"name";s:18:"get_ticket_details";s:11:"description";s:19:"Get ticket details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:95:"A tuple: The ticket title, the topic ID, the ticket type ID, the ticket owner (null: not found)";}}s:15:"add_ticket_type";a:6:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"ticket_type_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The ticket type name";s:11:"phpdoc_name";s:16:"ticket_type_name";}i:1;a:7:{s:4:"name";s:22:"guest_emails_mandatory";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:60:"Whether guest e-mail addresses are mandatory for new tickets";s:11:"phpdoc_name";s:22:"guest_emails_mandatory";}i:2;a:7:{s:4:"name";s:10:"search_faq";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 FAQ should be searched before submitting a new ticket";s:11:"phpdoc_name";s:10:"search_faq";}}s:4:"name";s:15:"add_ticket_type";s:11:"description";s:18:"Add a ticket type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:18:"The ticket type ID";}}s:16:"edit_ticket_type";a:5:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"ticket_type_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:18:"The ticket type ID";s:11:"phpdoc_name";s:14:"ticket_type_id";}i:1;a:5:{s:4:"name";s:16:"ticket_type_name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:46:"The new ticket type text (null: do not change)";s:11:"phpdoc_name";s:16:"ticket_type_name";}i:2;a:5:{s:4:"name";s:22:"guest_emails_mandatory";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:60:"Whether guest e-mail addresses are mandatory for new tickets";s:11:"phpdoc_name";s:22:"guest_emails_mandatory";}i:3;a:5:{s:4:"name";s:10:"search_faq";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:65:"Whether the FAQ should be searched before submitting a new ticket";s:11:"phpdoc_name";s:10:"search_faq";}}s:4:"name";s:16:"edit_ticket_type";s:11:"description";s:52:"Edit a ticket type, keeping the integer ID the same.";s:5:"flags";a:0:{}}s:18:"delete_ticket_type";a:5:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"ticket_type_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:18:"The ticket type ID";s:11:"phpdoc_name";s:14:"ticket_type_id";}}s:4:"name";s:18:"delete_ticket_type";s:11:"description";s:21:"Delete a ticket type.";s:5:"flags";a:0:{}}s:15:"get_ticket_type";a:6:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"ticket_type_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:48:"The ticket type (null: fallback for old tickets)";s:11:"phpdoc_name";s:14:"ticket_type_id";}}s:4:"name";s:15:"get_ticket_type";s:11:"description";s:50:"Get a map of properties for the given ticket type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"Array of properties";}}s:29:"update_ticket_type_lead_times";a:5:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"update_ticket_type_lead_times";s:11:"description";s:190:"Update the cache of ticket type lead times (average time taken for a response to tickets of that type) in the database.This is a query-intensive function, so should only be run occasionally.";s:5:"flags";a:0:{}}s:11:"get_tickets";a:6:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:9:"member_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:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"ticket_type_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 ticket type (null: all ticket types)";s:11:"phpdoc_name";s:14:"ticket_type_id";}i:2;a:7:{s:4:"name";s:28:"override_view_others_tickets";s:7:"default";s:13:"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:"Don't view others' tickets, even if the member has permission to";s:11:"phpdoc_name";s:28:"override_view_others_tickets";}i:3;a:7:{s:4:"name";s:21:"silent_error_handling";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:54:"Whether to skip showing errors, returning null instead";s:11:"phpdoc_name";s:21:"silent_error_handling";}i:4;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";}i:5;a:7:{s:4:"name";s:19:"include_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:30:"Whether to include first posts";s:11:"phpdoc_name";s:19:"include_first_posts";}}s:4:"name";s:11:"get_tickets";s:11:"description";s:288:"Get an array of tickets for the given member and ticket type. If the member has permission to see others' tickets, it will be a list of all ticketsin the system, restricted by ticket type as appropriate. Otherwise, it will be a list of that member's tickets, as restricted by ticket type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"Array of tickets, empty on failure";}}s:16:"get_ticket_posts";a:6:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:9:"ticket_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The ticket ID";s:11:"phpdoc_name";s:9:"ticket_id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:1;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:32:"Return location for the forum ID";s:11:"phpdoc_name";s:5:"forum";}i:2;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:1;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:32:"Return location for the topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:3;a:5:{s:4:"name";s:11:"ticket_type";s:3:"ref";b:1;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:35:"Return location for the ticket type";s:11:"phpdoc_name";s:11:"ticket_type";}i:4;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:26:"Start offset in pagination";s:11:"phpdoc_name";s:5:"start";}i:5;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:43:"Max per page in pagination (null: no limit)";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:16:"get_ticket_posts";s:11:"description";s:187:"Get the posts from a given ticket, and also return the IDs of the forum and topic containing it. The return value is the same asthat of get_forum_topic_posts(), except in error conditions";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:84:"The array of maps (Each map is: title, message, member, date) (null: no such ticket)";}}s:25:"delete_ticket_by_topic_id";a:5:{s:8:"filename";s:20:"sources/tickets2.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:23:"The associated topic ID";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:25:"delete_ticket_by_topic_id";s:11:"description";s:83:"Remove a ticket from the database. This does not remove the associated forum topic.";s:5:"flags";a:0:{}}s:15:"ticket_add_post";a:5:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:36:"The member ID (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}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:37:"The ticket ID (doesn't have to exist)";s:11:"phpdoc_name";s:9:"ticket_id";}i:2;a:5:{s:4:"name";s:14:"ticket_type_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"The ticket type (null: reply to ticket)";s:11:"phpdoc_name";s:14:"ticket_type_id";}i:3;a:5:{s:4:"name";s:5:"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:5:"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:10:"ticket_url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The home URL";s:11:"phpdoc_name";s:10:"ticket_url";}i:6;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:77:"Whether the reply is staff only (invisible to ticket owner, only on Conversr)";s:11:"phpdoc_name";s:10:"staff_only";}i:7;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";}}s:4:"name";s:15:"ticket_add_post";s:11:"description";s:151:"Add a new post to a ticket, or create a new ticket if a ticket with the given ID doesn't exist.It has the same return value as make_post_forum_topic().";s:5:"flags";a:0:{}}s:17:"send_ticket_email";a:5:{s:8:"filename";s:20:"sources/tickets2.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:9:"ticket_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The ticket ID";s:11:"phpdoc_name";s:9:"ticket_id";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"The ticket title";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"The ticket post's content";s:11:"phpdoc_name";s:4:"post";}i:3;a:5:{s:4:"name";s:10:"ticket_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:59:"The home URL (to view the ticket) (URLPATH or Tempcode URL)";s:11:"phpdoc_name";s:10:"ticket_url";}i:4;a:5:{s:4:"name";s:9:"uid_email";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:58:"Ticket owner's e-mail address, in the case of a new ticket";s:11:"phpdoc_name";s:9:"uid_email";}i:5;a:5:{s:4:"name";s:21:"ticket_type_id_if_new";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:63:"The new ticket type (null: it is a reply to an existing ticket)";s:11:"phpdoc_name";s:21:"ticket_type_id_if_new";}i:6;a:7:{s:4:"name";s:10:"new_poster";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:37:"Posting member (null: current member)";s:11:"phpdoc_name";s:10:"new_poster";}i:7;a:7:{s:4:"name";s:12:"auto_created";s:7:"default";s:13:"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 ticket was auto-created";s:11:"phpdoc_name";s:12:"auto_created";}}s:4:"name";s:17:"send_ticket_email";s:11:"description";s:109:"Send an e-mail notification for a new post in a support ticket, either to the staff or to the ticket's owner.";s:5:"flags";a:0:{}}s:25:"is_ticket_post_staff_only";a:6:{s:8:"filename";s:20:"sources/tickets2.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:5:"array";s:11:"description";s:26:"Array of data for the post";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:25:"is_ticket_post_staff_only";s:11:"description";s:73:"Is the given ticket post intended for staff only? Works only on Conversr.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the post's staff only";}}s:28:"incoming_ticket_email_script";a:5:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"incoming_ticket_email_script";s:11:"description";s:43:"Script to read in an e-mailed ticket/reply.";s:5:"flags";a:0:{}}s:23:"ticket_outgoing_message";a:5:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:9:"ticket_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Ticket ID";s:11:"phpdoc_name";s:9:"ticket_id";}i:1;a:5:{s:4:"name";s:10:"ticket_url";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"URL to the ticket (URLPATH or Tempcode)";s:11:"phpdoc_name";s:10:"ticket_url";}i:2;a:5:{s:4:"name";s:16:"ticket_type_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The ticket type's label";s:11:"phpdoc_name";s:16:"ticket_type_name";}i:3;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Ticket subject";s:11:"phpdoc_name";s:7:"subject";}i:4;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Ticket message";s:11:"phpdoc_name";s:7:"message";}i:5;a:5:{s:4:"name";s:7:"to_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"Display name of ticket owner";s:11:"phpdoc_name";s:7:"to_name";}i:6;a:5:{s:4:"name";s:8:"to_email";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:30:"E-mail address of ticket owner";s:11:"phpdoc_name";s:8:"to_email";}i:7;a:5:{s:4:"name";s:16:"from_displayname";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"Display name of staff poster";s:11:"phpdoc_name";s:16:"from_displayname";}i:8;a:7:{s:4:"name";s:3:"new";s:7:"default";s:13:"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 this is a new ticket, just created by the ticket owner";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:23:"ticket_outgoing_message";s:11:"description";s:55:"Send out an e-mail message for a ticket / ticket reply.";s:5:"flags";a:0:{}}s:24:"ticket_email_cannot_bind";a:5:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"Subject line of original message";s:11:"phpdoc_name";s:7:"subject";}i:1;a:5:{s:4:"name";s:4:"body";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Body of original message";s:11:"phpdoc_name";s:4:"body";}i:2;a:5:{s:4:"name";s:5:"email";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:34:"E-mail address we tried to bind to";s:11:"phpdoc_name";s:5:"email";}i:3;a:5:{s:4:"name";s:15:"email_bounce_to";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:91:"E-mail address of sender (usually the same as $email, but not if it was a forwarded e-mail)";s:11:"phpdoc_name";s:15:"email_bounce_to";}}s:4:"name";s:24:"ticket_email_cannot_bind";s:11:"description";s:75:"Send out an e-mail about us not recognising an e-mail address for a ticket.";s:5:"flags";a:0:{}}s:20:"ticket_incoming_scan";a:5:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"ticket_incoming_scan";s:11:"description";s:42:"Scan for new e-mails in the support inbox.";s:5:"flags";a:0:{}}s:23:"email_comcode_from_html";a:6:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"body";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"HTML body";s:11:"phpdoc_name";s:4:"body";}}s:4:"name";s:23:"email_comcode_from_html";s:11:"description";s:31:"Convert e-mail HTML to Comcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Comcode version";}}s:23:"email_comcode_from_text";a:6:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"body";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"Text body";s:11:"phpdoc_name";s:4:"body";}}s:4:"name";s:23:"email_comcode_from_text";s:11:"description";s:31:"Convert e-mail text to Comcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Comcode version";}}s:18:"is_non_human_email";a:6:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Subject line";s:11:"phpdoc_name";s:7:"subject";}i:1;a:5:{s:4:"name";s:4:"body";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Message body";s:11:"phpdoc_name";s:4:"body";}i:2;a:5:{s:4:"name";s:11:"full_header";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Message headers";s:11:"phpdoc_name";s:11:"full_header";}i:3;a:5:{s:4:"name";s:10:"email_from";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:12:"From address";s:11:"phpdoc_name";s:10:"email_from";}}s:4:"name";s:18:"is_non_human_email";s:11:"description";s:80:"See if we need to skip over an e-mail message, due to it not being from a human.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether it should not be processed";}}s:30:"_convert_text_quote_to_comcode";a:6:{s:8:"filename";s:37:"sources/tickets_email_integration.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:12:"preg Matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:30:"_convert_text_quote_to_comcode";s:11:"description";s:84:"Process a quote block in plain-text e-mail, into a Comcode quote tag. preg callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"The result";}}s:19:"_imap_get_mime_type";a:6:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"structure";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:9:"Structure";s:11:"phpdoc_name";s:9:"structure";}}s:4:"name";s:19:"_imap_get_mime_type";s:11:"description";s:51:"Get the mime type for a part of the IMAP structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"Mime type";}}s:14:"_imap_get_part";a:6:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"stream";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:22:"IMAP connection object";s:11:"phpdoc_name";s:6:"stream";}i:1;a:5:{s:4:"name";s:10:"msg_number";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Message number";s:11:"phpdoc_name";s:10:"msg_number";}i:2;a:5:{s:4:"name";s:9:"mime_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"Mime type (in upper case)";s:11:"phpdoc_name";s:9:"mime_type";}i:3;a:5:{s:4:"name";s:11:"attachments";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:96:"Map of attachments (name to file data); only populated if $mime_type is APPLICATION/OCTET-STREAM";s:11:"phpdoc_name";s:11:"attachments";}i:4;a:5:{s:4:"name";s:21:"attachment_size_total";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:34:"Total size of attachments in bytes";s:11:"phpdoc_name";s:21:"attachment_size_total";}i:5;a:7:{s:4:"name";s:9:"structure";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:38:"IMAP message structure (null: look up)";s:11:"phpdoc_name";s:9:"structure";}i:6;a:7:{s:4:"name";s:11:"part_number";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:33:"Message part number (blank: root)";s:11:"phpdoc_name";s:11:"part_number";}}s:4:"name";s:14:"_imap_get_part";s:11:"description";s:121:"Find a message part of an e-mail that matches a mime-type.Taken from http://php.net/manual/en/function.imap-fetchbody.php";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:43:"The message part (null: could not find one)";}}s:23:"ticket_incoming_message";a:5:{s:8:"filename";s:37:"sources/tickets_email_integration.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"from_email";s:3:"ref";b:0;s:4:"type";s:5:"EMAIL";s:11:"description";s:11:"From e-mail";s:11:"phpdoc_name";s:10:"from_email";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"E-mail subject";s:11:"phpdoc_name";s:7:"subject";}i:2;a:5:{s:4:"name";s:4:"body";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"E-mail body";s:11:"phpdoc_name";s:4:"body";}i:3;a:5:{s:4:"name";s:11:"attachments";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:96:"Map of attachments (name to file data); only populated if $mime_type is APPLICATION/OCTET-STREAM";s:11:"phpdoc_name";s:11:"attachments";}}s:4:"name";s:23:"ticket_incoming_message";s:11:"description";s:59:"Process an e-mail found, sent to the support ticket system.";s:5:"flags";a:0:{}}s:15:"transcode_video";a:6:{s:8:"filename";s:23:"sources/transcoding.php";s:10:"parameters";a:8:{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:33:"URL of the video to be transcoded";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:55:"The table we are saving into (null: don't save into DB)";s:11:"phpdoc_name";s:5:"table";}i:2;a:5:{s:4:"name";s:8:"local_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:63:"The ID of the video being transcoded (null: don't save into DB)";s:11:"phpdoc_name";s:8:"local_id";}i:3;a:5:{s:4:"name";s:14:"local_id_field";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:60:"Name of the ID field in the table (null: don't save into DB)";s:11:"phpdoc_name";s:14:"local_id_field";}i:4;a:5:{s:4:"name";s:9:"url_field";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:61:"Name of the URL field in the table (null: don't save into DB)";s:11:"phpdoc_name";s:9:"url_field";}i:5;a:5:{s:4:"name";s:19:"orig_filename_field";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:77:"Name of the original filename field in the table (null: built into URL field)";s:11:"phpdoc_name";s:19:"orig_filename_field";}i:6;a:5:{s:4:"name";s:11:"width_field";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:49:"Name of the width field in the table (null: none)";s:11:"phpdoc_name";s:11:"width_field";}i:7;a:5:{s:4:"name";s:12:"height_field";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:50:"Name of the height field in the table (null: none)";s:11:"phpdoc_name";s:12:"height_field";}}s:4:"name";s:15:"transcode_video";s:11:"description";s:18:"Transcode a video.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:55:"Transcoded file (or original URL if no change was made)";}}s:23:"zencoder_receive_script";a:5:{s:8:"filename";s:23:"sources/transcoding.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"zencoder_receive_script";s:11:"description";s:60:"Receive a message from zencoder that a video has transcoded.";s:5:"flags";a:0:{}}s:25:"store_transcoding_failure";a:5:{s:8:"filename";s:23:"sources/transcoding.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"transcoder_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"Transcoding ID";s:11:"phpdoc_name";s:13:"transcoder_id";}}s:4:"name";s:25:"store_transcoding_failure";s:11:"description";s:42:"Note that a zencoder transcode has failed.";s:5:"flags";a:0:{}}s:25:"store_transcoding_success";a:5:{s:8:"filename";s:23:"sources/transcoding.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"transcoder_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"Transcoding ID";s:11:"phpdoc_name";s:13:"transcoder_id";}i:1;a:7:{s:4:"name";s:7:"new_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:118:"Transcoded URL (null: Discerned using t_output_filename field, which we assume is where transcoder has copied file to)";s:11:"phpdoc_name";s:7:"new_url";}}s:4:"name";s:25:"store_transcoding_success";s:11:"description";s:35:"Handle that a transcode has worked.";s:5:"flags";a:0:{}}s:23:"init__type_sanitisation";a:5:{s:8:"filename";s:29:"sources/type_sanitisation.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"init__type_sanitisation";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:15:"is_alphanumeric";a:6:{s:8:"filename";s:29:"sources/type_sanitisation.php";s:10:"parameters";a:2:{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:18:"The string to test";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:6:"strict";s:7:"default";s:13:"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 to do stricter sanitisation, latin alphanumeric only and no dots";s:11:"phpdoc_name";s:6:"strict";}}s:4:"name";s:15:"is_alphanumeric";s:11:"description";s:57:"Find whether the specified string is alphanumeric or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether the string is alphanumeric or not";}}s:16:"is_email_address";a:6:{s:8:"filename";s:29:"sources/type_sanitisation.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:131:"The string to test (Note: This is typed string, not e-mail, because it has to function on failure + we could make an infinite loop)";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"is_email_address";s:11:"description";s:74:"Find whether the specified address is a well-formed e-mail address or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether the string is an email address or not";}}s:14:"upgrade_script";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"upgrade_script";s:11:"description";s:32:"The upgrader.php script handler.";s:5:"flags";a:0:{}}s:17:"post_fields_relay";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"post_fields_relay";s:11:"description";s:53:"Get hidden form fields for relaying POST information.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:53:"The hidden form fields for relaying POST information.";}}s:7:"fu_link";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:48:"The URL (something like 'upgrader.php?type=cns')";s:11:"phpdoc_name";s:3:"url";}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:20:"The URL caption text";s:11:"phpdoc_name";s:4:"text";}i:2;a:7:{s:4:"name";s:8:"disabled";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether it is disabled";s:11:"phpdoc_name";s:8:"disabled";}i:3;a:7:{s:4:"name";s:2:"js";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:"Extra JavaScript";s:11:"phpdoc_name";s:2:"js";}}s:4:"name";s:7:"fu_link";s:11:"description";s:62:"Generate a form-based link to relay POST information to a URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The form-based link";}}s:11:"up_do_login";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:1:{i:0;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:7:"?string";s:11:"description";s:26:"Error message (null: none)";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:11:"up_do_login";s:11:"description";s:20:"Output a login page.";s:5:"flags";a:0:{}}s:12:"up_do_header";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"up_do_header";s:11:"description";s:32:"Output the upgrader page header.";s:5:"flags";a:0:{}}s:12:"up_do_footer";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"up_do_footer";s:11:"description";s:32:"Output the upgrader page footer.";s:5:"flags";a:0:{}}s:14:"clear_caches_1";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"clear_caches_1";s:11:"description";s:18:"Clear many caches.";s:5:"flags";a:0:{}}s:14:"clear_caches_2";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"clear_caches_2";s:11:"description";s:65:"Clear more caches. This is intentionally done after db upgrading.";s:5:"flags";a:0:{}}s:17:"get_chmod_array_2";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_chmod_array_2";s:11:"description";s:31:"Find extra directories to chmod";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"Extra directories to chmod";}}s:11:"check_perms";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"check_perms";s:11:"description";s:22:"Do permission checking";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Output messages";}}s:9:"fix_perms";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"fix_perms";s:11:"description";s:21:"Do permission setting";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Output messages";}}s:12:"move_modules";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"move_modules";s:11:"description";s:92:"Tell the user about any modules that need moving again (because the cms ones haven't moved).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"Pair: HTML list of moved files, raw list";}}s:18:"check_excess_perms";a:6:{s:8:"filename";s:19:"sources/upgrade.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:34:"Permissions that DO need to be set";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:3:"rel";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:28:"Where we are searching under";s:11:"phpdoc_name";s:3:"rel";}}s:4:"name";s:18:"check_excess_perms";s:11:"description";s:27:"Find any excess permissions";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"Messages";}}s:19:"run_integrity_check";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:5:"basic";s:7:"default";s:13:"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 just do the minimum basic scan.";s:11:"phpdoc_name";s:5:"basic";}i:1;a:7:{s:4:"name";s:13:"allow_merging";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether merging of CSS changes is allowed.";s:11:"phpdoc_name";s:13:"allow_merging";}i:2;a:7:{s:4:"name";s:9:"unix_help";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to give some help to unix people.";s:11:"phpdoc_name";s:9:"unix_help";}}s:4:"name";s:19:"run_integrity_check";s:11:"description";s:130:"Do an integrity check. This does not include an alien check in basic mode; otherwise check_alien() is called within this function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"Results.";}}s:32:"check_outdated__handle_overrides";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"dir";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:41:"The directory we are scanning relative to";s:11:"phpdoc_name";s:3:"dir";}i:1;a:5:{s:4:"name";s:4:"rela";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:40:"The directory (relative) we are scanning";s:11:"phpdoc_name";s:4:"rela";}i:2;a:5:{s:4:"name";s:11:"master_data";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:27:"Unserialised data/files.dat";s:11:"phpdoc_name";s:11:"master_data";}i:3;a:5:{s:4:"name";s:10:"hook_files";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:55:"A list of the contents of our addon registry hook files";s:11:"phpdoc_name";s:10:"hook_files";}i:4;a:5:{s:4:"name";s:13:"allow_merging";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether merging of CSS changes is allowed";s:11:"phpdoc_name";s:13:"allow_merging";}}s:4:"name";s:32:"check_outdated__handle_overrides";s:11:"description";s:26:"Check for out-dated files.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"Tuple of various kinds of outdated/missing files";}}s:11:"check_alien";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"addon_files";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:81:"List of files from non-bundled addons (a map: relative file paths as keys of map)";s:11:"phpdoc_name";s:11:"addon_files";}i:1;a:5:{s:4:"name";s:9:"old_files";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"List of files from old version";s:11:"phpdoc_name";s:9:"old_files";}i:2;a:5:{s:4:"name";s:5:"files";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:22:"List of verbatim files";s:11:"phpdoc_name";s:5:"files";}i:3;a:5:{s:4:"name";s:3:"dir";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:41:"The directory we are scanning relative to";s:11:"phpdoc_name";s:3:"dir";}i:4;a:7:{s:4:"name";s:4:"rela";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:40:"The directory (relative) we are scanning";s:11:"phpdoc_name";s:4:"rela";}i:5;a:7:{s:4:"name";s:3:"raw";s:7:"default";s:13:"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 give raw output (no UI)";s:11:"phpdoc_name";s:3:"raw";}}s:4:"name";s:11:"check_alien";s:11:"description";s:22:"Check for alien files.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:58:"A pair: HTML list of alien files, HTML list of addon files";}}s:15:"_integrity_scan";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"_integrity_scan";s:11:"description";s:71:"Move/delete certain selected things, in follow up to an integrity scan.";s:5:"flags";a:0:{}}s:16:"version_specific";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"version_specific";s:11:"description";s:152:"Version specific upgrading. These are things that are relatively major structural changes and therefore will get done outside the module upgrade system.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether anything was done";}}s:18:"rebuild_zone_files";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"rebuild_zone_files";s:11:"description";s:50:"Zone index.php files could go stale, rebuild them.";s:5:"flags";a:0:{}}s:20:"move_folder_contents";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:11:"Source path";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:"PATH";s:11:"description";s:16:"Destination path";s:11:"phpdoc_name";s:2:"to";}}s:4:"name";s:20:"move_folder_contents";s:11:"description";s:105:"Move files from one folder to another.Doesn't move .htaccess and index.html.Deletes the folder afterward.";s:5:"flags";a:0:{}}s:22:"perform_search_replace";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"reps";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Change from/to this";s:11:"phpdoc_name";s:4:"reps";}}s:4:"name";s:22:"perform_search_replace";s:11:"description";s:33:"Perform a big search and replace.";s:5:"flags";a:0:{}}s:14:"fu_rename_zone";a:5:{s:8:"filename";s:19:"sources/upgrade.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:24:"The old name of the zone";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:8:"new_zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The new name of the zone";s:11:"phpdoc_name";s:8:"new_zone";}i:2;a:7:{s:4:"name";s:25:"dont_bother_with_main_row";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to assume the main zone row has already been renamed as part of a wider editing operation";s:11:"phpdoc_name";s:25:"dont_bother_with_main_row";}}s:4:"name";s:14:"fu_rename_zone";s:11:"description";s:62:"Rename a zone in the database and move any custom pages in it.";s:5:"flags";a:0:{}}s:15:"upgrade_modules";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"upgrade_modules";s:11:"description";s:20:"Upgrade all modules.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:41:"List of upgraded/installed modules/blocks";}}s:11:"cns_upgrade";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"cns_upgrade";s:11:"description";s:32:"Upgrade Conversr if appropriate.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether anything was done";}}s:26:"fix_mysql_database_charset";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"fix_mysql_database_charset";s:11:"description";s:196:"Make sure the site database has the correct character set internally. Composr already ensures the communication charset makes sense for what Composr is using, this makes sure it stores sanely too.";s:5:"flags";a:0:{}}s:29:"change_mysql_database_charset";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"new_charset";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Character set";s:11:"phpdoc_name";s:11:"new_charset";}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:8:"Database";s:11:"phpdoc_name";s:2:"db";}i:2;a:7:{s:4:"name";s:8:"reencode";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:162:"Whether to let MySQL do a reencoding of the characters (if this is set to false we actually are adjusting the interpretation while leaving the disk data the same)";s:11:"phpdoc_name";s:8:"reencode";}}s:4:"name";s:29:"change_mysql_database_charset";s:11:"description";s:41:"Refresh a MySQL database's character set.";s:5:"flags";a:0:{}}s:14:"upgrade_themes";a:6:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"upgrade_themes";s:11:"description";s:19:"Upgrade all themes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"HTML output";}}s:13:"upgrade_theme";a:6:{s:8:"filename";s:19:"sources/upgrade.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:20:"Theme to be upgraded";s:11:"phpdoc_name";s:5:"theme";}i:1;a:5:{s:4:"name";s:12:"from_version";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:12:"From version";s:11:"phpdoc_name";s:12:"from_version";}i:2;a:5:{s:4:"name";s:10:"to_version";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:14:"Target version";s:11:"phpdoc_name";s:10:"to_version";}i:3;a:7:{s:4:"name";s:8:"test_run";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether executing a test run (i.e. not do anything)";s:11:"phpdoc_name";s:8:"test_run";}}s:4:"name";s:13:"upgrade_theme";s:11:"description";s:65:"Upgrade a theme automatically, using hand-coded migration arrays.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:41:"A pair: List of errors, List of successes";}}s:27:"upgrade_sharedinstall_sites";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:4:"from";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:24:"Position to proceed from";s:11:"phpdoc_name";s:4:"from";}}s:4:"name";s:27:"upgrade_sharedinstall_sites";s:11:"description";s:24:"Upgrade shared installs.";s:5:"flags";a:0:{}}s:22:"automate_upgrade__safe";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"automate_upgrade__safe";s:11:"description";s:60:"Automatically go through a partial upgrade for current site.";s:5:"flags";a:0:{}}s:16:"automate_upgrade";a:5:{s:8:"filename";s:19:"sources/upgrade.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"automate_upgrade";s:11:"description";s:55:"Automatically go through full upgrade for current site.";s:5:"flags";a:0:{}}s:24:"init__upload_syndication";a:5:{s:8:"filename";s:30:"sources/upload_syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"init__upload_syndication";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:27:"get_upload_syndication_json";a:6:{s:8:"filename";s:30:"sources/upload_syndication.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:19:"file_handling_types";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:46:"The kind of files we are going to be handling.";s:11:"phpdoc_name";s:19:"file_handling_types";}}s:4:"name";s:27:"get_upload_syndication_json";s:11:"description";s:87:"Get details for what upload syndication we can do for particular filtered upload types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:96:"A pair: JSON data describing what upload syndication we can do (may be null), a filetype filter.";}}s:30:"upload_syndication_auth_script";a:5:{s:8:"filename";s:30:"sources/upload_syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"upload_syndication_auth_script";s:11:"description";s:108:"Save syndication to a web service (typically via oAuth, but abstracted within the upload_syndication hooks).";s:5:"flags";a:0:{}}s:21:"upload_will_syndicate";a:6:{s:8:"filename";s:30:"sources/upload_syndication.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:7:"ID_TEXT";s:11:"description";s:18:"Upload field name.";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:21:"upload_will_syndicate";s:11:"description";s:86:"Find if upload syndication will happen. Tell's us we do not need to worry about quota.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether it will?";}}s:25:"handle_upload_syndication";a:6:{s:8:"filename";s:30:"sources/upload_syndication.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:7:"ID_TEXT";s:11:"description";s:18:"Upload field name.";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"Title associated with the upload.";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"Description associated with the upload.";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:93:"URL to the upload (should be local, if it isn't we'll return quickly without doing anything).";s:11:"phpdoc_name";s:3:"url";}i:4;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:5;a:5:{s:4:"name";s:26:"remove_locally_if_no_quota";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:125:"Whether to delete the local copy, if the current user has no upload quota. If no syndication was set, an error will be given.";s:11:"phpdoc_name";s:26:"remove_locally_if_no_quota";}}s:4:"name";s:25:"handle_upload_syndication";s:11:"description";s:70:"Do upload syndication (after an upload has been received, in-context).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:64:"New URL (if we deleted the local copy, it will be a remote URL).";}}s:13:"init__uploads";a:5:{s:8:"filename";s:19:"sources/uploads.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"init__uploads";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:30:"post_param_multi_source_upload";a:6:{s:8:"filename";s:19:"sources/uploads.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:67:"Form field prefix (input type suffixes will be added automatically)";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:9:"upload_to";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:66:"Where to upload to (null: the correct place for $theme_image_type)";s:11:"phpdoc_name";s:9:"upload_to";}i:2;a:7:{s:4:"name";s:8:"required";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether an image is required";s:11:"phpdoc_name";s:8:"required";}i:3;a:7:{s:4:"name";s:7:"is_edit";s:7:"default";s:13:"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 this is an edit operation";s:11:"phpdoc_name";s:7:"is_edit";}i:4;a:7:{s:4:"name";s:8:"filename";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:55:"Pass the filename back by reference (null: do not pass)";s:11:"phpdoc_name";s:8:"filename";}i:5;a:7:{s:4:"name";s:9:"thumb_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:85:"Pass the thumbnail back by reference (null: do not pass & do not collect a thumbnail)";s:11:"phpdoc_name";s:9:"thumb_url";}i:6;a:7:{s:4:"name";s:11:"upload_type";s:7:"default";i:15;s:11:"default_raw";s:2:"15";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"A CMS_UPLOAD_* constant";s:11:"phpdoc_name";s:11:"upload_type";}i:7;a:7:{s:4:"name";s:14:"copy_to_server";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to copy a URL (if a URL) to the server, and return a local reference";s:11:"phpdoc_name";s:14:"copy_to_server";}}s:4:"name";s:30:"post_param_multi_source_upload";s:11:"description";s:227:"An upload has been passed through by POST, either as a file (a new upload), a url, or as a filedump reference.For images use post_param_image instead.Used with form_input_upload_multi_source.Get the file URL from the POST data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:130:"The URL (either to an independent upload, or the theme image, or a filedump URL) (null: leave alone, when doing an edit operation)";}}s:11:"is_plupload";a:6:{s:8:"filename";s:19:"sources/uploads.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:18:"fake_prepopulation";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Simulate population of the $_FILES array.";s:11:"phpdoc_name";s:18:"fake_prepopulation";}}s:4:"name";s:11:"is_plupload";s:11:"description";s:171:"Find whether an plupload upload has just happened, and optionally simulate as if it were a normal upload (although 'is_uploaded_file'/'move_uploaded_file' would not work).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether an plupload upload has just happened.";}}s:7:"get_url";a:6:{s:8:"filename";s:19:"sources/uploads.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:12:"specify_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:109:"The name of the POST parameter storing the URL (if '', then no POST parameter). Parameter value may be blank.";s:11:"phpdoc_name";s:12:"specify_name";}i:1;a:5:{s:4:"name";s:11:"attach_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:136:"The name of the HTTP file parameter storing the upload (if '', then no HTTP file parameter). No file necessarily is uploaded under this.";s:11:"phpdoc_name";s:11:"attach_name";}i:2;a:5:{s:4:"name";s:13:"upload_folder";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The folder name where we will put this upload";s:11:"phpdoc_name";s:13:"upload_folder";}i:3;a:8:{s:4:"name";s:9:"obfuscate";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:150:"Whether to obfuscate file names so the URLs can not be guessed/derived (0=do not, 1=do, 2=make extension .dat as well, 3=only obfuscate if we need to)";s:11:"phpdoc_name";s:9:"obfuscate";s:3:"set";s:7:"0 1 2 3";}i:4;a:7:{s:4:"name";s:12:"enforce_type";s:7:"default";i:15;s:11:"default_raw";s:2:"15";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:63:"The type of upload it is (bitmask, from CMS_UPLOAD_* constants)";s:11:"phpdoc_name";s:12:"enforce_type";}i:5;a:7:{s:4:"name";s:14:"make_thumbnail";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Make a thumbnail (this only makes sense, if it is an image)";s:11:"phpdoc_name";s:14:"make_thumbnail";}i:6;a:7:{s:4:"name";s:18:"thumb_specify_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:63:"The name of the POST parameter storing the thumb URL. As before";s:11:"phpdoc_name";s:18:"thumb_specify_name";}i:7;a:7:{s:4:"name";s:17:"thumb_attach_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:71:"The name of the HTTP file parameter storing the thumb upload. As before";s:11:"phpdoc_name";s:17:"thumb_attach_name";}i:8;a:7:{s:4:"name";s:14:"copy_to_server";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to copy a URL (if a URL) to the server, and return a local reference";s:11:"phpdoc_name";s:14:"copy_to_server";}i:9;a:7:{s:4:"name";s:13:"accept_errors";s:7:"default";s:13:"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 accept upload errors";s:11:"phpdoc_name";s:13:"accept_errors";}i:10;a:7:{s:4:"name";s:20:"should_get_something";s:7:"default";s:13:"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 give a (deferred?) error if no file was given at all";s:11:"phpdoc_name";s:20:"should_get_something";}i:11;a:7:{s:4:"name";s:17:"only_make_smaller";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:109:"Whether to apply a 'never make the image bigger' rule for thumbnail creation (would affect very small images)";s:11:"phpdoc_name";s:17:"only_make_smaller";}i:12;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:"Member ID to run permissions with (null: current member)";s:11:"phpdoc_name";s:9:"member_id";}i:13;a:7:{s:4:"name";s:18:"upload_folder_full";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:93:"Full path to upload folder, in case it is not relative to the base directory (null: work out)";s:11:"phpdoc_name";s:18:"upload_folder_full";}i:14;a:7:{s:4:"name";s:17:"thumb_folder_full";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:92:"Full path to thumb folder, in case it is not relative to the base directory (null: work out)";s:11:"phpdoc_name";s:17:"thumb_folder_full";}i:15;a:7:{s:4:"name";s:8:"filename";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:"Filename to use (null: choose one)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:7:"get_url";s:11:"description";s:158:"Get URLs generated according to the specified information. It can also generate a thumbnail if required. It first tries attached upload, then URL, then fails.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:87:"An array of 4 URL bits (URL, thumb URL, URL original filename, thumb original filename)";}}s:16:"_get_specify_url";a:6:{s:8:"filename";s:19:"sources/uploads.php";s:10:"parameters";a:5:{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:36:"Member ID to check permissions with.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:12:"specify_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:109:"The name of the POST parameter storing the URL (if '', then no POST parameter). Parameter value may be blank.";s:11:"phpdoc_name";s:12:"specify_name";}i:2;a:5:{s:4:"name";s:13:"upload_folder";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The folder name where we will put this upload";s:11:"phpdoc_name";s:13:"upload_folder";}i:3;a:7:{s:4:"name";s:12:"enforce_type";s:7:"default";i:15;s:11:"default_raw";s:2:"15";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:63:"The type of upload it is (bitmask, from CMS_UPLOAD_* constants)";s:11:"phpdoc_name";s:12:"enforce_type";}i:4;a:7:{s:4:"name";s:13:"accept_errors";s:7:"default";s:13:"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 accept upload errors";s:11:"phpdoc_name";s:13:"accept_errors";}}s:4:"name";s:16:"_get_specify_url";s:11:"description";s:72:"Filters specified URLs to make sure we're really allowed to access them.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"A pair: the URL and the filename";}}s:26:"_check_enforcement_of_type";a:6:{s:8:"filename";s:19:"sources/uploads.php";s:10:"parameters";a:4:{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:36:"Member ID to check permissions with.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The filename.";s:11:"phpdoc_name";s:4:"file";}i:2;a:5:{s:4:"name";s:12:"enforce_type";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:63:"The type of upload it is (bitmask, from CMS_UPLOAD_* constants)";s:11:"phpdoc_name";s:12:"enforce_type";}i:3;a:7:{s:4:"name";s:13:"accept_errors";s:7:"default";s:13:"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 accept upload errors";s:11:"phpdoc_name";s:13:"accept_errors";}}s:4:"name";s:26:"_check_enforcement_of_type";s:11:"description";s:82:"Ensures a given filename is of the right file extension for the desired file type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:15:"_get_upload_url";a:6:{s:8:"filename";s:19:"sources/uploads.php";s:10:"parameters";a:8:{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:36:"Member ID to check permissions with.";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:5:{s:4:"name";s:11:"attach_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:136:"The name of the HTTP file parameter storing the upload (if '', then no HTTP file parameter). No file necessarily is uploaded under this.";s:11:"phpdoc_name";s:11:"attach_name";}i:2;a:5:{s:4:"name";s:13:"upload_folder";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The folder name where we will put this upload";s:11:"phpdoc_name";s:13:"upload_folder";}i:3;a:5:{s:4:"name";s:18:"upload_folder_full";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:16:"Full folder path";s:11:"phpdoc_name";s:18:"upload_folder_full";}i:4;a:7:{s:4:"name";s:12:"enforce_type";s:7:"default";i:15;s:11:"default_raw";s:2:"15";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:63:"The type of upload it is (bitmask, from CMS_UPLOAD_* constants)";s:11:"phpdoc_name";s:12:"enforce_type";}i:5;a:8:{s:4:"name";s:9:"obfuscate";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:118:"Whether to obfuscate file names so the URLs can not be guessed/derived (0=do not, 1=do, 2=make extension .dat as well)";s:11:"phpdoc_name";s:9:"obfuscate";s:3:"set";s:5:"0 1 2";}i:6;a:7:{s:4:"name";s:13:"accept_errors";s:7:"default";s:13:"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 accept upload errors";s:11:"phpdoc_name";s:13:"accept_errors";}i:7;a:7:{s:4:"name";s:8:"filename";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:"Filename to use (null: choose one)";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:15:"_get_upload_url";s:11:"description";s:75:"Converts an uploaded file into a URL, by moving it to an appropriate place.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"A pair: the URL and the filename";}}s:20:"get_upload_filearray";a:5:{s:8:"filename";s:19:"sources/uploads.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:7:"ID_TEXT";s:11:"description";s:55:"The name of the HTTP file parameter storing the upload.";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:10:"filearrays";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:37:"Where we are storing our file arrays.";s:11:"phpdoc_name";s:10:"filearrays";}}s:4:"name";s:20:"get_upload_filearray";s:11:"description";s:71:"In Tapatalk files may be passed as arrays, so abstract that complexity.";s:5:"flags";a:0:{}}s:14:"get_remappings";a:6:{s:8:"filename";s:26:"sources/url_remappings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"url_scheme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The URL scheme to use";s:11:"phpdoc_name";s:10:"url_scheme";}}s:4:"name";s:14:"get_remappings";s:11:"description";s:31:"Find the list of URL remappings";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"The list of URL remappings";}}s:10:"init__urls";a:5:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"init__urls";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:17:"get_self_url_easy";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:18:"script_name_if_cli";s:7:"default";s:13:"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:"Return the script name instead of a URL, if running on the CLI. If this is set to false it will return the base URL instead.";s:11:"phpdoc_name";s:18:"script_name_if_cli";}}s:4:"name";s:17:"get_self_url_easy";s:11:"description";s:158:"Get a well formed URL equivalent to the current URL. Reads direct from the environment and does no clever mapping at all. This function should rarely be used.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:7:"The URL";}}s:12:"get_self_url";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:5:{i:0;a:7:{s:4:"name";s:8:"evaluate";s:7:"default";s:13:"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 evaluate the URL (so as we don't return Tempcode)";s:11:"phpdoc_name";s:8:"evaluate";}i:1;a:7:{s:4:"name";s:14:"root_if_posted";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:152:"Whether to direct to the default page if there was a POST request leading to where we are now (i.e. to avoid missing post fields when we go to this URL)";s:11:"phpdoc_name";s:14:"root_if_posted";}i:2;a:7:{s:4:"name";s:12:"extra_params";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:"A map of extra parameters for the URL (null: none)";s:11:"phpdoc_name";s:12:"extra_params";}i:3;a:7:{s:4:"name";s:10:"posted_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:217:"Whether to also keep POSTed data, in the GET request (useful if either_param_string is used to get the data instead of post_param_string - of course the POST data must be of the not--persistent-state-changing variety)";s:11:"phpdoc_name";s:10:"posted_too";}i:4;a:7:{s:4:"name";s:11:"avoid_remap";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:123:"Whether to avoid URL Schemes (sometimes essential so we can assume the standard URL parameter addition scheme in templates)";s:11:"phpdoc_name";s:11:"avoid_remap";}}s:4:"name";s:12:"get_self_url";s:11:"description";s:52:"Get a well formed URL equivalent to the current URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:28:"The URL (Tempcode or string)";}}s:14:"cms_url_encode";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"url_part";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:17:"The URL to encode";s:11:"phpdoc_name";s:8:"url_part";}i:1;a:7:{s:4:"name";s:19:"can_try_url_schemes";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:67:"Whether we have to consider URL Schemes (null: don't know, look up)";s:11:"phpdoc_name";s:19:"can_try_url_schemes";}}s:4:"name";s:14:"cms_url_encode";s:11:"description";s:195:"Encode a URL component in such a way that it won't get nuked by Apache %2F blocking security and url encoded '&' screwing. The get_param_string function will map it back. Hackerish but necessary.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:18:"The encoded result";}}s:19:"cms_url_encode_mini";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"url_part";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:17:"The URL to encode";s:11:"phpdoc_name";s:8:"url_part";}i:1;a:7:{s:4:"name";s:19:"can_try_url_schemes";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:67:"Whether we have to consider URL Schemes (null: don't know, look up)";s:11:"phpdoc_name";s:19:"can_try_url_schemes";}}s:4:"name";s:19:"cms_url_encode_mini";s:11:"description";s:80:"Encode a URL component, as per cms_url_encode but without slashes being encoded.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:18:"The encoded result";}}s:27:"cms_url_decode_post_process";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"url_part";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:17:"The URL to encode";s:11:"phpdoc_name";s:8:"url_part";}}s:4:"name";s:27:"cms_url_decode_post_process";s:11:"description";s:65:"Decode a URL component that was encoded with hackerish_url_encode";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:18:"The encoded result";}}s:20:"push_no_keep_context";a:5:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"setting";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:17:"Temporary setting";s:11:"phpdoc_name";s:7:"setting";}}s:4:"name";s:20:"push_no_keep_context";s:11:"description";s:67:"Place a global marker as to whether we're skipping keep parameters.";s:5:"flags";a:0:{}}s:19:"pop_no_keep_context";a:5:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"pop_no_keep_context";s:11:"description";s:134:"Remove the global marker as to whether we're skipping keep parameters. Never call this more than you've called push_no_keep_context().";s:5:"flags";a:0:{}}s:14:"skippable_keep";a:6:{s:8:"filename";s:16:"sources/urls.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:6:"string";s:11:"description";s:14:"Parameter name";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Parameter value";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:14:"skippable_keep";s:11:"description";s:86:"Find whether we can skip the normal preservation of a keep value, for whatever reason.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether we can skip it";}}s:13:"is_page_https";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{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:23:"The zone the page is in";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:17:"The page codename";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:13:"is_page_https";s:11:"description";s:166:"Find whether the specified page is to use HTTPS (if not -- it will use HTTP).All images (etc) on a HTTPS page should use HTTPS to avoid mixed-content browser notices.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether the page is to run across an HTTPS connection";}}s:19:"can_try_url_schemes";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:11:"avoid_remap";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:160:"Whether to explicitly avoid using URL Schemes. While it might seem weird to put this in as a function parameter, it removes duplicated logic checks in the code.";s:11:"phpdoc_name";s:11:"avoid_remap";}}s:4:"name";s:19:"can_try_url_schemes";s:11:"description";s:30:"Find if a URL Scheme is in use";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a URL Scheme is in use";}}s:19:"has_keep_parameters";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"has_keep_parameters";s:11:"description";s:35:"Find if keep_ parameters are in use";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether they are";}}s:9:"build_url";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:4:"vars";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:206:"A map of parameter names to parameter values. E.g. array('page'=>'example','type'=>'foo','id'=>2). Values may be strings or integers, or Tempcode, or null. null indicates "skip this". 'page' cannot be null.";s:11:"phpdoc_name";s:4:"vars";}i:1;a:7:{s:4:"name";s:9:"zone_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:165:"The zone the URL is pointing to. YOU SHOULD NEVER HARD CODE THIS- USE '_SEARCH', '_SELF' (if you're self-referencing your own page) or the output of get_module_zone.";s:11:"phpdoc_name";s:9:"zone_name";}i:2;a:7:{s:4:"name";s:4:"skip";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:225:"Variables to explicitly not put in the URL (perhaps because we have $keep_all set, or we are blocking certain keep_ values). The format is of a map where the keys are the names, and the values are true. (null: don't skip any)";s:11:"phpdoc_name";s:4:"skip";}i:3;a:7:{s:4:"name";s:8:"keep_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:84:"Whether to keep all non-skipped parameters that were in the current URL, in this URL";s:11:"phpdoc_name";s:8:"keep_all";}i:4;a:7:{s:4:"name";s:11:"avoid_remap";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:123:"Whether to avoid URL Schemes (sometimes essential so we can assume the standard URL parameter addition scheme in templates)";s:11:"phpdoc_name";s:11:"avoid_remap";}i:5;a:7:{s:4:"name";s:9:"skip_keep";s:7:"default";s:13:"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 skip actually putting on keep_ parameters (rarely will this skipping be desirable)";s:11:"phpdoc_name";s:9:"skip_keep";}i:6;a:7:{s:4:"name";s:4:"hash";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:95:"Hash portion of the URL (blank: none). May or may not start '#' - code will put it on if needed";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:9:"build_url";s:11:"description";s:133:"Build and return a proper URL, from the $vars array.Note: URL parameters should always be in lower case (one of the coding standards)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"The URL in Tempcode format.";}}s:15:"build_page_link";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"vars";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:206:"A map of parameter names to parameter values. E.g. array('page'=>'example','type'=>'foo','id'=>2). Values may be strings or integers, or Tempcode, or null. null indicates "skip this". 'page' cannot be null.";s:11:"phpdoc_name";s:4:"vars";}i:1;a:7:{s:4:"name";s:9:"zone_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:165:"The zone the URL is pointing to. YOU SHOULD NEVER HARD CODE THIS- USE '_SEARCH', '_SELF' (if you're self-referencing your own page) or the output of get_module_zone.";s:11:"phpdoc_name";s:9:"zone_name";}i:2;a:7:{s:4:"name";s:4:"skip";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:222:"Variables to explicitly not put in the URL (perhaps because we have $keep_all set, or we are blocking certain keep_ values). The format is of a map where the keys are the names, and the values are 1. (null: don't skip any)";s:11:"phpdoc_name";s:4:"skip";}i:3;a:7:{s:4:"name";s:4:"hash";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:95:"Hash portion of the URL (blank: none). May or may not start '#' - code will put it on if needed";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:15:"build_page_link";s:11:"description";s:139:"Build and return a proper page-link, from the $vars array.Note: URL parameters should always be in lower case (one of the coding standards)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"The page-link.";}}s:20:"url_monikers_enabled";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"url_monikers_enabled";s:11:"description";s:38:"Find whether URL monikers are enabled.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether URL monikers are enabled.";}}s:10:"_build_url";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:4:"vars";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:140:"A map of parameter names to parameter values. Values may be strings or integers, or null. null indicates "skip this". 'page' cannot be null.";s:11:"phpdoc_name";s:4:"vars";}i:1;a:7:{s:4:"name";s:9:"zone_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:165:"The zone the URL is pointing to. YOU SHOULD NEVER HARD CODE THIS- USE '_SEARCH', '_SELF' (if you're self-referencing your own page) or the output of get_module_zone.";s:11:"phpdoc_name";s:9:"zone_name";}i:2;a:7:{s:4:"name";s:4:"skip";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:222:"Variables to explicitly not put in the URL (perhaps because we have $keep_all set, or we are blocking certain keep_ values). The format is of a map where the keys are the names, and the values are 1. (null: don't skip any)";s:11:"phpdoc_name";s:4:"skip";}i:3;a:7:{s:4:"name";s:8:"keep_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:84:"Whether to keep all non-skipped parameters that were in the current URL, in this URL";s:11:"phpdoc_name";s:8:"keep_all";}i:4;a:7:{s:4:"name";s:11:"avoid_remap";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:123:"Whether to avoid URL Schemes (sometimes essential so we can assume the standard URL parameter addition scheme in templates)";s:11:"phpdoc_name";s:11:"avoid_remap";}i:5;a:7:{s:4:"name";s:9:"skip_keep";s:7:"default";s:13:"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 skip actually putting on keep_ parameters (rarely will this skipping be desirable)";s:11:"phpdoc_name";s:9:"skip_keep";}i:6;a:7:{s:4:"name";s:4:"hash";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:95:"Hash portion of the URL (blank: none). May or may not start '#' - code will put it on if needed";s:11:"phpdoc_name";s:4:"hash";}}s:4:"name";s:10:"_build_url";s:11:"description";s:133:"Build and return a proper URL, from the $vars array.Note: URL parameters should always be in lower case (one of the coding standards)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:25:"The URL in string format.";}}s:24:"_handle_array_var_append";a:5:{s:8:"filename";s:16:"sources/urls.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:18:"Primary field name";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:5:"Array";s:11:"phpdoc_name";s:3:"val";}i:2;a:5:{s:4:"name";s:4:"vars";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:24:"Flat array to write into";s:11:"phpdoc_name";s:4:"vars";}}s:4:"name";s:24:"_handle_array_var_append";s:11:"description";s:77:"Recursively put array parameters into a flat array for use in a query string.";s:5:"flags";a:0:{}}s:19:"_url_rewrite_params";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"zone_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The name of the zone for this";s:11:"phpdoc_name";s:9:"zone_name";}i:1;a:5:{s:4:"name";s:4:"vars";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:40:"A map of variables to include in our URL";s:11:"phpdoc_name";s:4:"vars";}i:2;a:7:{s:4:"name";s:15:"force_index_php";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:117:"Force inclusion of the index.php name into a URL Scheme, so something may tack on extra parameters to the result here";s:11:"phpdoc_name";s:15:"force_index_php";}}s:4:"name";s:19:"_url_rewrite_params";s:11:"description";s:48:"Attempt to use a URL Scheme to improve this URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?URLPATH";s:11:"description";s:45:"The improved URL (null: couldn't do anything)";}}s:12:"url_is_local";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{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:16:"The URL to check";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:12:"url_is_local";s:11:"description";s:211:"Find if the specified URL is local or not (actually, if it is relative). This is often used by code that wishes to use file system functions on URLs (Composr will store such relative local URLs for uploads, etc)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether the URL is local";}}s:14:"looks_like_url";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The value to check";s:11:"phpdoc_name";s:5:"value";}i:1;a:7:{s:4:"name";s:3:"lax";s:7:"default";s:13:"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 be a bit lax in the check";s:11:"phpdoc_name";s:3:"lax";}}s:4:"name";s:14:"looks_like_url";s:11:"description";s:84:"Find if a value appears to be some kind of URL (possibly a Composrised Comcode one).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the value appears to be a URL";}}s:22:"build_keep_form_fields";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:3:{i:0;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:52:"The page for the form to go to (blank: don't attach)";s:11:"phpdoc_name";s:4:"page";}i:1;a:7:{s:4:"name";s:8:"keep_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:118:"Whether to keep all elements of the current URL represented in this form (rather than just the keep_ fields, and page)";s:11:"phpdoc_name";s:8:"keep_all";}i:2;a:7:{s:4:"name";s:7:"exclude";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:"A list of parameters to exclude (null: don't exclude any)";s:11:"phpdoc_name";s:7:"exclude";}}s:4:"name";s:22:"build_keep_form_fields";s:11:"description";s:192:"Get hidden fields for a form representing 'keep_x'. If we are having a GET form instead of a POST form, we need to do this. This function also encodes the page name, as we'll always want that.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The builtup hidden form fields";}}s:22:"build_keep_post_fields";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:7:"exclude";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:52:"A list of parameters to exclude (null: exclude none)";s:11:"phpdoc_name";s:7:"exclude";}i:1;a:7:{s:4:"name";s:16:"force_everything";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Force field labels and descriptions to copy through even when there are huge numbers of parameters";s:11:"phpdoc_name";s:16:"force_everything";}}s:4:"name";s:22:"build_keep_post_fields";s:11:"description";s:71:"Relay all POST variables for this URL, to the URL embedded in the form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The builtup hidden form fields";}}s:15:"url_to_filename";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"url_full";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:41:"The URL to convert to an encoded filename";s:11:"phpdoc_name";s:8:"url_full";}}s:4:"name";s:15:"url_to_filename";s:11:"description";s:128:"Takes a URL, and converts it into a file system storable filename. This is used to cache URL contents to the servers filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:34:"A usable filename based on the URL";}}s:11:"qualify_url";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{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:26:"The URL to fully qualified";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_base";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base-URL";s:11:"phpdoc_name";s:8:"url_base";}}s:4:"name";s:11:"qualify_url";s:11:"description";s:67:"Take a URL and base-URL, and fully qualify the URL according to it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"Fully qualified URL";}}s:16:"page_link_decode";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"The page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:16:"page_link_decode";s:11:"description";s:52:"Take a page-link and convert to attributes and zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:79:"Triple: zone, attribute-array, hash part of a URL including the hash (or blank)";}}s:19:"convert_url_to_path";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{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:20:"The value to convert";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:19:"convert_url_to_path";s:11:"description";s:35:"Convert a URL to a local file path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?PATH";s:11:"description";s:30:"File path (null: is not local)";}}s:23:"fixup_protocolless_urls";a:6:{s:8:"filename";s:16:"sources/urls.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:7:"URLPATH";s:11:"description";s:14:"The URL to fix";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:23:"fixup_protocolless_urls";s:11:"description";s:187:"Sometimes users don't enter full URLs but do intend for them to be absolute. This code tries to see what relative URLs are actually absolute ones, via an algorithm. It then fixes the URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:52:"The fixed URL (or original one if no fix was needed)";}}s:16:"url_to_page_link";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:3:{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:126:"The URL to convert. Note it may not be for a URL Scheme, and it must be based on the local base URL (else failure WILL occur).";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:8:"abs_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:134:"Whether to only convert absolute URLs. Turn this on if you're not sure what you're passing is a URL not and you want to be extra safe.";s:11:"phpdoc_name";s:8:"abs_only";}i:2;a:7:{s:4:"name";s:12:"perfect_only";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to only allow perfect conversions.";s:11:"phpdoc_name";s:12:"perfect_only";}}s:4:"name";s:16:"url_to_page_link";s:11:"description";s:35:"Convert a local URL to a page-link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:41:"The page-link (blank: could not convert).";}}s:16:"page_link_to_url";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"URL or page-link";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:16:"page_link_to_url";s:11:"description";s:49:"Given a URL or page-link, return an absolute URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:3:"URL";}}s:25:"page_link_to_tempcode_url";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"page_link";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"Page-link";s:11:"phpdoc_name";s:9:"page_link";}}s:4:"name";s:25:"page_link_to_tempcode_url";s:11:"description";s:42:"Given a page-link, return an absolute URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:3:"URL";}}s:22:"page_path_to_page_link";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The path.";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:22:"page_path_to_page_link";s:11:"description";s:54:"Convert a local page file path to a written page-link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:41:"The page-link (blank: could not convert).";}}s:18:"load_moniker_hooks";a:5:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"load_moniker_hooks";s:11:"description";s:51:"Load up hooks needed to detect how to use monikers.";s:5:"flags";a:0:{}}s:15:"find_id_moniker";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"url_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:97:"The URL component map (must contain 'page', 'type', and 'id' if this function is to do anything).";s:11:"phpdoc_name";s:9:"url_parts";}i:1;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 URL zone name (only used for Comcode Page URL monikers).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:15:"find_id_moniker";s:11:"description";s:221:"Find the textual moniker for a typical Composr URL path. This will be called from inside build_url, based on details learned from a moniker hook (only if a hook exists to hint how to make the requested link SEO friendly).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:37:"The moniker ID (null: could not find)";}}s:10:"extend_url";a:5:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:45:"The URL to append to (returned by reference).";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:6:"append";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:74:"URL parameter(s) to append, with no leading or trailing ? or & characters.";s:11:"phpdoc_name";s:6:"append";}}s:4:"name";s:10:"extend_url";s:11:"description";s:139:"Extend a URL with additional parameter(s). Does not handle URL encoding of the appended parameter, which you should do first if applicable.";s:5:"flags";a:0:{}}s:27:"ensure_protocol_suitability";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The URL to check.";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:27:"ensure_protocol_suitability";s:11:"description";s:136:"Ensure a URL can be embedded within our webpage context.Currently this means making sure if we're on an HTTPS page, everything is HTTPS.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"$append The fixed URL.";}}s:16:"check_url_exists";a:6:{s:8:"filename";s:16:"sources/urls.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The URL to check.";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:14:"test_freq_secs";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:43:"Cache must be newer than this many seconds.";s:11:"phpdoc_name";s:14:"test_freq_secs";}}s:4:"name";s:16:"check_url_exists";s:11:"description";s:29:"Check to see if a URL exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether it does.";}}s:21:"set_execution_context";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"new_get";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:44:"The URL component map (must contain 'page').";s:11:"phpdoc_name";s:7:"new_get";}i:1;a:7:{s:4:"name";s:8:"new_zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The zone.";s:11:"phpdoc_name";s:8:"new_zone";}i:2;a:7:{s:4:"name";s:18:"new_current_script";s:7:"default";s:5:"index";s:11:"default_raw";s:7:"'index'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"The running script.";s:11:"phpdoc_name";s:18:"new_current_script";}i:3;a:7:{s:4:"name";s:15:"erase_keep_also";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:53:"Whether to get rid of keep_ variables in current URL.";s:11:"phpdoc_name";s:15:"erase_keep_also";}}s:4:"name";s:21:"set_execution_context";s:11:"description";s:89:"Change whatever global context that is required in order to run from a different context.";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 that would be required to be passed back to reset the state.";}}s:19:"remove_url_mistakes";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:1:{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:14:"The URL to fix";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:19:"remove_url_mistakes";s:11:"description";s:64:"Map spaces to %20 and put http:// in front of URLs starting www.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:16:"The fixed result";}}s:23:"_build_keep_form_fields";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:3:{i:0;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:52:"The page for the form to go to (blank: don't attach)";s:11:"phpdoc_name";s:4:"page";}i:1;a:7:{s:4:"name";s:8:"keep_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:118:"Whether to keep all elements of the current URL represented in this form (rather than just the keep_ fields, and page)";s:11:"phpdoc_name";s:8:"keep_all";}i:2;a:7:{s:4:"name";s:7:"exclude";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:"A list of parameters to exclude (null: don't exclude any)";s:11:"phpdoc_name";s:7:"exclude";}}s:4:"name";s:23:"_build_keep_form_fields";s:11:"description";s:192:"Get hidden fields for a form representing 'keep_x'. If we are having a GET form instead of a POST form, we need to do this. This function also encodes the page name, as we'll always want that.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The builtup hidden form fields";}}s:18:"_fixed_post_parser";a:6:{s:8:"filename";s:17:"sources/urls2.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:27:"Key name to put value under";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:23:"Value (string or array)";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:18:"_fixed_post_parser";s:11:"description";s:53:"Recurser helper function for _build_keep_post_fields.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:30:"The builtup hidden form fields";}}s:23:"_build_keep_post_fields";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:7:"exclude";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:52:"A list of parameters to exclude (null: exclude none)";s:11:"phpdoc_name";s:7:"exclude";}i:1;a:7:{s:4:"name";s:16:"force_everything";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:98:"Force field labels and descriptions to copy through even when there are huge numbers of parameters";s:11:"phpdoc_name";s:16:"force_everything";}}s:4:"name";s:23:"_build_keep_post_fields";s:11:"description";s:71:"Relay all POST variables for this URL, to the URL embedded in the form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The builtup hidden form fields";}}s:16:"_url_to_filename";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"url_full";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:41:"The URL to convert to an encoded filename";s:11:"phpdoc_name";s:8:"url_full";}}s:4:"name";s:16:"_url_to_filename";s:11:"description";s:128:"Takes a URL, and converts it into a file system storable filename. This is used to cache URL contents to the servers filesystem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:34:"A usable filename based on the URL";}}s:12:"_qualify_url";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:2:{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:26:"The URL to fully qualified";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:8:"url_base";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base-URL";s:11:"phpdoc_name";s:8:"url_base";}}s:4:"name";s:12:"_qualify_url";s:11:"description";s:67:"Take a URL and base-URL, and fully qualify the URL according to it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"Fully qualified URL";}}s:20:"_convert_url_to_path";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:1:{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:20:"The value to convert";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:20:"_convert_url_to_path";s:11:"description";s:35:"Convert a URL to a local file path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?PATH";s:11:"description";s:30:"File path (null: is not local)";}}s:24:"_fixup_protocolless_urls";a:6:{s:8:"filename";s:17:"sources/urls2.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:7:"URLPATH";s:11:"description";s:14:"The URL to fix";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:24:"_fixup_protocolless_urls";s:11:"description";s:187:"Sometimes users don't enter full URLs but do intend for them to be absolute. This code tries to see what relative URLs are actually absolute ones, via an algorithm. It then fixes the URL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:52:"The fixed URL (or original one if no fix was needed)";}}s:17:"_url_to_page_link";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:3:{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:122:"The URL to convert. Note it may not be a URL Scheme, and it must be based on the local base URL (else failure WILL occur).";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:8:"abs_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:134:"Whether to only convert absolute URLs. Turn this on if you're not sure what you're passing is a URL not and you want to be extra safe.";s:11:"phpdoc_name";s:8:"abs_only";}i:2;a:7:{s:4:"name";s:12:"perfect_only";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to only allow perfect conversions.";s:11:"phpdoc_name";s:12:"perfect_only";}}s:4:"name";s:17:"_url_to_page_link";s:11:"description";s:35:"Convert a local URL to a page-link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:41:"The page-link (blank: could not convert).";}}s:23:"_page_path_to_page_link";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The path.";s:11:"phpdoc_name";s:4:"page";}}s:4:"name";s:23:"_page_path_to_page_link";s:11:"description";s:54:"Convert a local page file path to a written page-link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:41:"The page-link (blank: could not convert).";}}s:28:"autogenerate_new_url_moniker";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"ob_info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The hooks info profile.";s:11:"phpdoc_name";s:7:"ob_info";}i:1;a:5:{s:4:"name";s:9:"url_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:97:"The URL component map (must contain 'page', 'type', and 'id' if this function is to do anything).";s:11:"phpdoc_name";s:9:"url_parts";}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 URL zone name (only used for Comcode Page URL monikers).";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:28:"autogenerate_new_url_moniker";s:11:"description";s:138:"Called from 'find_id_moniker'. We tried to lookup a moniker, found a hook, but found no stored moniker. So we'll try and autogenerate one.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:65:"The moniker ID (null: error generating it somehow, can not do it)";}}s:25:"suggest_new_idmoniker_for";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Page name.";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:7:"ID_TEXT";s:11:"description";s:17:"Screen type code.";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:2:"id";}i:3;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 URL zone name (only used for Comcode Page URL monikers).";s:11:"phpdoc_name";s:4:"zone";}i:4;a:5:{s:4:"name";s:11:"moniker_src";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:62:"String from which a moniker will be chosen (may not be blank).";s:11:"phpdoc_name";s:11:"moniker_src";}i:5;a:7:{s:4:"name";s:6:"is_new";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:87:"Whether we are sure this is a new moniker (makes things more efficient, saves a query).";s:11:"phpdoc_name";s:6:"is_new";}i:6;a:7:{s:4:"name";s:7:"moniker";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:84:"Actual moniker to use (null: generate from $moniker_src). Usually this is left null.";s:11:"phpdoc_name";s:7:"moniker";}}s:4:"name";s:25:"suggest_new_idmoniker_for";s:11:"description";s:110:"Called when content is added, or edited/moved, based upon a new form field that specifies what moniker to use.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The chosen moniker.";}}s:15:"_choose_moniker";a:6:{s:8:"filename";s:17:"sources/urls2.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:7:"ID_TEXT";s:11:"description";s:10:"Page name.";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:7:"ID_TEXT";s:11:"description";s:17:"Screen type code.";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:2:"id";}i:3;a:5:{s:4:"name";s:11:"moniker_src";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:62:"String from which a moniker will be chosen (may not be blank).";s:11:"phpdoc_name";s:11:"moniker_src";}i:4;a:7:{s:4:"name";s:19:"no_exists_check_for";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:146:"Whether to skip the exists check for a certain moniker (will be used to pass "existing self" for edits) (null: nothing existing to check against).";s:11:"phpdoc_name";s:19:"no_exists_check_for";}i:5;a:7:{s:4:"name";s:13:"scope_context";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:108:"Where the moniker will be placed in the moniker URL tree (null: unknown, so make so no duplicates anywhere).";s:11:"phpdoc_name";s:13:"scope_context";}}s:4:"name";s:15:"_choose_moniker";s:11:"description";s:43:"Delete an old moniker, and place a new one.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Chosen moniker.";}}s:17:"_generate_moniker";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"moniker_src";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Raw string.";s:11:"phpdoc_name";s:11:"moniker_src";}}s:4:"name";s:17:"_generate_moniker";s:11:"description";s:84:"Generate a moniker from an arbitrary raw string. Does not perform uniqueness checks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Moniker.";}}s:19:"_give_moniker_scope";a:6:{s:8:"filename";s:17:"sources/urls2.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:7:"ID_TEXT";s:11:"description";s:10:"Page name.";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:7:"ID_TEXT";s:11:"description";s:17:"Screen type code.";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Resource ID.";s:11:"phpdoc_name";s:2:"id";}i:3;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 URL zone name (only used for Comcode Page URL monikers).";s:11:"phpdoc_name";s:4:"zone";}i:4;a:5:{s:4:"name";s:4:"main";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Pathless moniker.";s:11:"phpdoc_name";s:4:"main";}}s:4:"name";s:19:"_give_moniker_scope";s:11:"description";s:72:"Take a moniker and it's page-link details, and make a full path from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:28:"The fully qualified moniker.";}}s:23:"find_id_via_url_moniker";a:6:{s:8:"filename";s:17:"sources/urls2.php";s:10:"parameters";a:2:{i:0;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:1;a:5:{s:4:"name";s:11:"url_moniker";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The URL moniker.";s:11:"phpdoc_name";s:11:"url_moniker";}}s:4:"name";s:23:"find_id_via_url_moniker";s:11:"description";s:72:"Take a moniker and it's page-link details, and make a full path from it.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:25:"The ID (null: not found).";}}s:11:"init__users";a:5:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__users";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:13:"handle_logins";a:5:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"handle_logins";s:11:"description";s:88:"Handles an attempted login or logout, and take care of all the sessions and cookies etc.";s:5:"flags";a:0:{}}s:8:"is_guest";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:2:{i:0;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:39:"Member ID to check (null: current user)";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:10:"quick_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:62:"Whether to just do a quick check, don't establish new sessions";s:11:"phpdoc_name";s:10:"quick_only";}}s:4:"name";s:8:"is_guest";s:11:"description";s:43:"Find whether the current member is a guest.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether the current member is a guest";}}s:10:"get_member";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"quick_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:62:"Whether to just do a quick check, don't establish new sessions";s:11:"phpdoc_name";s:10:"quick_only";}}s:4:"name";s:10:"get_member";s:11:"description";s:128:"Get the ID of the currently active member.It see's if the session exists / cookie is valid -- and gets the member ID accordingly";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:106:"The member requesting this web page (possibly the guest member - which strictly speaking, is not a member)";}}s:27:"enforce_temporary_passwords";a:5:{s:8:"filename";s:17:"sources/users.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:18:"The current member";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:27:"enforce_temporary_passwords";s:11:"description";s:114:"Make sure temporary passwords restrict you to the edit account page. May not return, if it needs to do a redirect.";s:5:"flags";a:0:{}}s:15:"get_displayname";a:6:{s:8:"filename";s:17:"sources/users.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:30:"apply_forum_driver_md5_variant";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:2:{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:83:"The string converted member-ID in actuality, although this function is more general";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:30:"apply_forum_driver_md5_variant";s:11:"description";s:198:"Apply hashing to some input. To this date, all forum drivers use md5, but some use it differently.This function will pass through the parameters to an equivalent forum_md5 function if it is defined.";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:14:"get_session_id";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_session_id";s:11:"description";s:27:"Get the current session ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The current session ID (blank: none)";}}s:17:"is_httpauth_login";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"is_httpauth_login";s:11:"description";s:58:"Find whether the current member is logged in via httpauth.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether the current member is logged in via httpauth";}}s:21:"enforce_sessioned_url";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:1:{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:62:"The URL to enforce results in session persistence for the user";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:21:"enforce_sessioned_url";s:11:"description";s:163:"Make sure that the given URL contains a session if cookies are disabled.NB: This is used for login redirection. It had to add the session ID into the redirect url.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:66:"The fixed URL (potentially nothing was done, depending on cookies)";}}s:34:"delete_expired_sessions_or_recover";a:6:{s:8:"filename";s:17:"sources/users.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:99:"User to get a current session for (null: do not try, which guarantees a return result of null also)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:34:"delete_expired_sessions_or_recover";s:11:"description";s:104:"Find what sessions are expired and delete them, and recover an existing one for $member if there is one.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:51:"The session ID we rebound to (null: did not rebind)";}}s:17:"get_member_cookie";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_member_cookie";s:11:"description";s:29:"Get the member cookie's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:64:"The member username/ID (depending on forum driver) cookie's name";}}s:18:"get_session_cookie";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_session_cookie";s:11:"description";s:30:"Get the session cookie's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:28:"The session ID cookie's name";}}s:15:"get_pass_cookie";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_pass_cookie";s:11:"description";s:38:"Get the member password cookie's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:33:"The member password cookie's name";}}s:16:"cms_admirecookie";a:6:{s:8:"filename";s:17:"sources/users.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:22:"The name of the cookie";s:11:"phpdoc_name";s:4:"name";}i:1;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:49:"The default value (null: just use the value null)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:16:"cms_admirecookie";s:11:"description";s:19:"Get a cookie value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:58:"The value stored in the cookie (null: the default default)";}}s:11:"get_cms_cpf";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"cpf";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The CPF name stem";s:11:"phpdoc_name";s:3:"cpf";}i:1;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:43:"Member to lookup for (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:11:"get_cms_cpf";s:11:"description";s:132:"Get the value of a special 'cms_' custom profile field. For Conversr it can also do it for a pure field title, e.g. "Example Field".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:55:"The value (blank: has a blank value, or does not exist)";}}s:22:"get_default_theme_name";a:6:{s:8:"filename";s:17:"sources/users.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_default_theme_name";s:11:"description";s:86:"Get the name of the default theme, assuming it exists. This is based on the site name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:10:"Theme name";}}s:16:"member_is_online";a:6:{s:8:"filename";s:18:"sources/users2.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:19:"The member to check";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:16:"member_is_online";s:11:"description";s:27:"Find if a member is online.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether they are online";}}s:16:"get_users_online";a:6:{s:8:"filename";s:18:"sources/users2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"longer_time";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to use a longer online-time -- the session expiry-time";s:11:"phpdoc_name";s:11:"longer_time";}i:1;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:220:"We really only need to make sure we get the status for this user, although at this functions discretion more may be returned and the row won't be there if the user is not online (null: no filter). May not be the guest ID";s:11:"phpdoc_name";s:6:"filter";}i:2;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:47:"The total online members, returned by reference";s:11:"phpdoc_name";s:5:"count";}}s:4:"name";s:16:"get_users_online";s:11:"description";s:44:"Get database rows of all the online members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:30:"Database rows (null: too many)";}}s:14:"member_blocked";a:6:{s:8:"filename";s:18:"sources/users2.php";s:10:"parameters";a:2:{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:24:"The member being checked";s:11:"phpdoc_name";s:9:"member_id";}i:1;a:7:{s:4:"name";s:14:"member_blocker";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:53:"The member who may be blocking (null: current member)";s:11:"phpdoc_name";s:14:"member_blocker";}}s:4:"name";s:14:"member_blocked";s:11:"description";s:40:"Find if a member is blocked by a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether the member is blocked";}}s:24:"get_members_viewing_wrap";a:6:{s:8:"filename";s:18:"sources/users2.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:4:"page";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:51:"The page they need to be viewing (null: don't care)";s:11:"phpdoc_name";s:4:"page";}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:56:"The page-type they need to be viewing (null: don't care)";s:11:"phpdoc_name";s:4:"type";}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:11:"?SHORT_TEXT";s:11:"description";s:54:"The type-id they need to be viewing (null: don't care)";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:11:"forum_layer";s:7:"default";s:13:"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 has to be done over the forum driver (multi site network)";s:11:"phpdoc_name";s:11:"forum_layer";}}s:4:"name";s:24:"get_members_viewing_wrap";s:11:"description";s:77:"Get template-ready details of members viewing the specified Composr location.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"A map of member-IDs to rows about them (null: Too many)";}}s:19:"get_members_viewing";a:6:{s:8:"filename";s:18:"sources/users2.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:4:"page";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:82:"The page they need to be viewing (null: environment current) (blank: blank't care)";s:11:"phpdoc_name";s:4:"page";}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:85:"The page-type they need to be viewing (null: environment current) (blank: don't care)";s:11:"phpdoc_name";s:4:"type";}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:11:"?SHORT_TEXT";s:11:"description";s:83:"The type-id they need to be viewing (null: environment current) (blank: don't care)";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:11:"forum_layer";s:7:"default";s:13:"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 has to be done over the forum driver (multi site network)";s:11:"phpdoc_name";s:11:"forum_layer";}}s:4:"name";s:19:"get_members_viewing";s:11:"description";s:60:"Get a map of members viewing the specified Composr location.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:103:"A map of member-IDs to rows about them (except for guest, which is a count) (null: Too many / disabled)";}}s:14:"get_modal_user";a:6:{s:8:"filename";s:18:"sources/users2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_modal_user";s:11:"description";s:93:"Find a user to test access against, if we're planning on making presence of something public.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:16:"The modal member";}}s:36:"restricted_manually_enabled_backdoor";a:6:{s:8:"filename";s:32:"sources/users_active_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"restricted_manually_enabled_backdoor";s:11:"description";s:71:"Backdoor handler. Can only be activated by those with FTP write-access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:22:"The member to simulate";}}s:20:"get_first_admin_user";a:6:{s:8:"filename";s:32:"sources/users_active_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_first_admin_user";s:11:"description";s:25:"Get the first admin user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:10:"Admin user";}}s:19:"handle_active_login";a:5:{s:8:"filename";s:32:"sources/users_active_actions.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:8:"Username";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:19:"handle_active_login";s:11:"description";s:16:"Process a login.";s:5:"flags";a:0:{}}s:20:"handle_active_logout";a:5:{s:8:"filename";s:32:"sources/users_active_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"handle_active_logout";s:11:"description";s:17:"Process a logout.";s:5:"flags";a:0:{}}s:28:"_enforce_temporary_passwords";a:5:{s:8:"filename";s:32:"sources/users_active_actions.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:18:"The current member";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:28:"_enforce_temporary_passwords";s:11:"description";s:114:"Make sure temporary passwords restrict you to the edit account page. May not return, if it needs to do a redirect.";s:5:"flags";a:0:{}}s:14:"delete_session";a:5:{s:8:"filename";s:32:"sources/users_active_actions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"session";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The new session";s:11:"phpdoc_name";s:7:"session";}}s:4:"name";s:14:"delete_session";s:11:"description";s:17:"Delete a session.";s:5:"flags";a:0:{}}s:16:"set_invisibility";a:5:{s:8:"filename";s:32:"sources/users_active_actions.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:14:"make_invisible";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to make the current user invisible (true=make invisible, false=make visible)";s:11:"phpdoc_name";s:14:"make_invisible";}}s:4:"name";s:16:"set_invisibility";s:11:"description";s:37:"Set invisibility on the current user.";s:5:"flags";a:0:{}}s:13:"cms_setcookie";a:6:{s:8:"filename";s:32:"sources/users_active_actions.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:22:"The name of the cookie";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The value to store in the cookie";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:7:"session";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether it is a session cookie (gets removed once the browser window closes)";s:11:"phpdoc_name";s:7:"session";}i:3;a:7:{s:4:"name";s:9:"http_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:55:"Whether the cookie should not be readable by JavaScript";s:11:"phpdoc_name";s:9:"http_only";}i:4;a:7:{s:4:"name";s:4:"days";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:29:"Days to store (null: default)";s:11:"phpdoc_name";s:4:"days";}}s:4:"name";s:13:"cms_setcookie";s:11:"description";s:53:"Create a cookie, inside Composr's cookie environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:39:"The result of the PHP setcookie command";}}s:13:"cms_eatcookie";a:6:{s:8:"filename";s:32:"sources/users_active_actions.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:22:"The name of the cookie";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:13:"cms_eatcookie";s:11:"description";s:74:"Deletes a cookie (if it exists), from within Composr's cookie environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:39:"The result of the PHP setcookie command";}}s:22:"_enforce_sessioned_url";a:6:{s:8:"filename";s:38:"sources/users_inactive_occasionals.php";s:10:"parameters";a:1:{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:62:"The URL to enforce results in session persistence for the user";s:11:"phpdoc_name";s:3:"url";}}s:4:"name";s:22:"_enforce_sessioned_url";s:11:"description";s:163:"Make sure that the given URL contains a session if cookies are disabled.NB: This is used for login redirection. It had to add the session ID into the redirect url.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:13:"The fixed URL";}}s:14:"create_session";a:6:{s:8:"filename";s:38:"sources/users_inactive_occasionals.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:16:"Logged in member";s:11:"phpdoc_name";s:6:"member";}i:1;a:7:{s:4:"name";s:17:"session_confirmed";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:50:"Whether the session should be considered confirmed";s:11:"phpdoc_name";s:17:"session_confirmed";}i:2;a:7:{s:4:"name";s:9:"invisible";s:7:"default";s:13:"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 the session should be invisible";s:11:"phpdoc_name";s:9:"invisible";}}s:4:"name";s:14:"create_session";s:11:"description";s:61:"Set up a new session / Restore an existing one that was lost.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"New session ID";}}s:14:"set_session_id";a:5:{s:8:"filename";s:38:"sources/users_inactive_occasionals.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:"ID_TEXT";s:11:"description";s:14:"The session ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"guest_session";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether this is a guest session (guest sessions will use persistent cookies)";s:11:"phpdoc_name";s:13:"guest_session";}}s:4:"name";s:14:"set_session_id";s:11:"description";s:31:"Set the session ID of the user.";s:5:"flags";a:0:{}}s:14:"force_httpauth";a:5:{s:8:"filename";s:38:"sources/users_inactive_occasionals.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"force_httpauth";s:11:"description";s:109:"Force an HTTP authentication login box / relay it as if it were a posted login. This function is rarely used.";s:5:"flags";a:0:{}}s:12:"try_su_login";a:6:{s:8:"filename";s:38:"sources/users_inactive_occasionals.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:21:"Real logged in member";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:12:"try_su_login";s:11:"description";s:74:"Filter a member ID through SU, if SU is on and if the user has permission.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:16:"Simulated member";}}s:18:"try_httpauth_login";a:6:{s:8:"filename";s:38:"sources/users_inactive_occasionals.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"try_httpauth_login";s:11:"description";s:172:"Try and login via HTTP authentication. This function is only called if HTTP authentication is currently active. With HTTP authentication we trust the PHP_AUTH_USER setting.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:43:"Logged in member (null: no log in happened)";}}s:16:"try_cookie_login";a:6:{s:8:"filename";s:38:"sources/users_inactive_occasionals.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"try_cookie_login";s:11:"description";s:18:"Do a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:43:"Logged in member (null: no log in happened)";}}s:17:"cms_version_minor";a:6:{s:8:"filename";s:19:"sources/version.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"cms_version_minor";s:11:"description";s:263:"Get the minor/patch version of your installation. This changes with each release, including bug fix releases. It generally consists of 'a' or 'a.b', where 'a' increments represent major changes and 'b' increments represent tiny changes or alpha/beta/RC numbering.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:85:"The minor/patch version number of your installation (e.g. 0.1 or 1.1 or RC1 or 1.RC1)";}}s:18:"cms_version_number";a:6:{s:8:"filename";s:19:"sources/version.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"cms_version_number";s:11:"description";s:127:"Get the general version number of your installation (incorporates major and first [numeric] component of minor version number).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:47:"The general version number of your installation";}}s:16:"cms_version_time";a:6:{s:8:"filename";s:19:"sources/version.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"cms_version_time";s:11:"description";s:53:"Get the timestamp at which this version was released.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:49:"The timestamp at which this version was released.";}}s:22:"cms_version_time_major";a:6:{s:8:"filename";s:19:"sources/version.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"cms_version_time_major";s:11:"description";s:59:"Get the timestamp at which this MAJOR version was released.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:55:"The timestamp at which this MAJOR version was released.";}}s:30:"get_future_version_information";a:6:{s:8:"filename";s:20:"sources/version2.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"get_future_version_information";s:11:"description";s:99:"Get information about new versions of Composr (or more accurately, what's wrong with this version).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:47:"Information about the installed Composr version";}}s:18:"get_version_branch";a:6:{s:8:"filename";s:20:"sources/version2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"general";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?float";s:11:"description";s:46:"General version number (null: on disk version)";s:11:"phpdoc_name";s:7:"general";}}s:4:"name";s:18:"get_version_branch";s:11:"description";s:100:"Get branch version number for a Composr version.This is not used for much, it's a very special case.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"Branch version number";}}s:18:"get_version_dotted";a:6:{s:8:"filename";s:20:"sources/version2.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:4:"main";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:"Main version number (null: on disk version)";s:11:"phpdoc_name";s:4:"main";}i:1;a:7:{s:4:"name";s:5:"minor";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:44:"Minor version number (null: on disk version)";s:11:"phpdoc_name";s:5:"minor";}}s:4:"name";s:18:"get_version_dotted";s:11:"description";s:89:"Get dotted version from given Composr-version-registry (version.php) supplied components.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"Dotted version number";}}s:33:"get_version_dotted__from_anything";a:6:{s:8:"filename";s:20:"sources/version2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"any_format";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"Any reasonable input";s:11:"phpdoc_name";s:10:"any_format";}}s:4:"name";s:33:"get_version_dotted__from_anything";s:11:"description";s:299:"Gets any random way of writing a version number (in all of Composr's history) and makes it a dotted style like "3.2.beta2".Note that the dotted format is not compatible with PHP's version_compare function directly but $long_dotted_number_with_qualifier from get_version_components__from_dotted() is.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"Dotted version number";}}s:35:"get_version_components__from_dotted";a:6:{s:8:"filename";s:20:"sources/version2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"dotted";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Dotted version number";s:11:"phpdoc_name";s:6:"dotted";}}s:4:"name";s:35:"get_version_components__from_dotted";s:11:"description";s:48:"Analyse a dotted version number into components.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:457:"Tuple of components: dotted basis version (i.e. with no alpha/beta/RC component and no trailing zeros), qualifier (blank, or alpha, or beta, or RC), qualifier number (null if not an alpha/beta/RC), dotted version number with trailing zeros to always cover 3 components, general version number (i.e. float, no patch release and qualifier information, like cms_version_number), dotted version number to cover 3 or 4 components (i.e. with qualifier if present)";}}s:31:"get_version_pretty__from_dotted";a:6:{s:8:"filename";s:20:"sources/version2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"dotted";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Dotted version number";s:11:"phpdoc_name";s:6:"dotted";}}s:4:"name";s:31:"get_version_pretty__from_dotted";s:11:"description";s:220:"Get a pretty version number for a Composr version.This pretty style is not used in Composr code per se, but is shown to users and hence Composr may need to recognise it when searching news posts, download databases, etc.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"Pretty version number";}}s:22:"is_substantial_release";a:6:{s:8:"filename";s:20:"sources/version2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"dotted";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"Dotted version number";s:11:"phpdoc_name";s:6:"dotted";}}s:4:"name";s:22:"is_substantial_release";s:11:"description";s:61:"Whether it is a substantial release (i.e. major new version).";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:29:"initialise_special_page_types";a:5:{s:8:"filename";s:22:"sources/view_modes.php";s:10:"parameters";a:1:{i:0;a:6:{s:4:"name";s:17:"special_page_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The special page type.";s:11:"phpdoc_name";s:17:"special_page_type";s:3:"set";s:25:"query templates tree lang";}}s:4:"name";s:29:"initialise_special_page_types";s:11:"description";s:69:"Initialise state variables for the special page type being requested.";s:5:"flags";a:0:{}}s:18:"special_page_types";a:5:{s:8:"filename";s:22:"sources/view_modes.php";s:10:"parameters";a:3:{i:0;a:6:{s:4:"name";s:17:"special_page_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The special page type.";s:11:"phpdoc_name";s:17:"special_page_type";s:3:"set";s:25:"query templates tree lang";}i:1;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:33:"The normal script Tempcode output";s:11:"phpdoc_name";s:3:"out";}i:2;a:5:{s:4:"name";s:13:"out_evaluated";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:34:"The normal script evaluated output";s:11:"phpdoc_name";s:13:"out_evaluated";}}s:4:"name";s:18:"special_page_types";s:11:"description";s:32:"Handle special page type output.";s:5:"flags";a:0:{}}s:23:"find_template_tree_nice";a:6:{s:8:"filename";s:22:"sources/view_modes.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:58:"The codename of the current template item in the recursion";s:11:"phpdoc_name";s:8:"codename";}i:1;a:5:{s:4:"name";s:8:"children";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:40:"The template tree structure for children";s:11:"phpdoc_name";s:8:"children";}i:2;a:5:{s:4:"name";s:5:"fresh";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:102:"Whether the template tree came from a cache (if so, we can take some liberties with it's presentation)";s:11:"phpdoc_name";s:5:"fresh";}i:3;a:7:{s:4:"name";s:13:"cache_started";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:115:"As $fresh, except something underneath at any unknown point did come from the cache, so this must have by extension";s:11:"phpdoc_name";s:13:"cache_started";}}s:4:"name";s:23:"find_template_tree_nice";s:11:"description";s:61:"Convert a template tree structure into a HTML representation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"HTML representation";}}s:24:"check_xhtml_webstandards";a:6:{s:8:"filename";s:22:"sources/view_modes.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The XHTML to check";s:11:"phpdoc_name";s:3:"out";}i:1;a:7:{s:4:"name";s:18:"display_regardless";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:68:"Display XHTML output regardless of whether there was an error or not";s:11:"phpdoc_name";s:18:"display_regardless";}i:2;a:8:{s:4:"name";s:12:"preview_mode";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:149:"Whether we are opening up an XHTML-fragment in a preview box (0 means no, 1 means yes, 2 means we are asking for additional manual check information)";s:11:"phpdoc_name";s:12:"preview_mode";s:3:"set";s:5:"0 1 2";}i:3;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:26:"Whether to return Tempcode";s:11:"phpdoc_name";s:3:"ret";}}s:4:"name";s:24:"check_xhtml_webstandards";s:11:"description";s:133:"Takes the output from the scripts, and check the XHTML for conformance, then echoes the page, plus the webstandards checking results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:47:"Returned result (won't return it $ret is false)";}}s:28:"display_webstandards_results";a:6:{s:8:"filename";s:22:"sources/view_modes.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The data that was checked";s:11:"phpdoc_name";s:3:"out";}i:1;a:5:{s:4:"name";s:5:"error";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Error information";s:11:"phpdoc_name";s:5:"error";}i:2;a:7:{s:4:"name";s:12:"preview_mode";s:7:"default";s:13:"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 we are opening up an XHTML-fragment in a preview box";s:11:"phpdoc_name";s:12:"preview_mode";}i:3;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:26:"Whether to return Tempcode";s:11:"phpdoc_name";s:3:"ret";}}s:4:"name";s:28:"display_webstandards_results";s:11:"description";s:57:"Show results of running a webstandards checking function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:47:"Returned result (won't return it $ret is false)";}}s:27:"attach_message_memory_usage";a:5:{s:8:"filename";s:22:"sources/view_modes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"messages_bottom";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"Where to place the message.";s:11:"phpdoc_name";s:15:"messages_bottom";}}s:4:"name";s:27:"attach_message_memory_usage";s:11:"description";s:38:"Attach a message showing memory usage.";s:5:"flags";a:0:{}}s:19:"init__web_resources";a:5:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"init__web_resources";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:18:"require_javascript";a:5:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"javascript";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The javascript file required";s:11:"phpdoc_name";s:10:"javascript";}}s:4:"name";s:18:"require_javascript";s:11:"description";s:54:"Make sure that the given javascript file is loaded up.";s:5:"flags";a:0:{}}s:18:"javascript_enforce";a:6:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:1:"j";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The javascript file required";s:11:"phpdoc_name";s:1:"j";}i:1;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:43:"The name of the theme (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}i:2;a:7:{s:4:"name";s:11:"allow_defer";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:94:"Allow the compilation to be deferred through a PHP call (useful for parallelising compilation)";s:11:"phpdoc_name";s:11:"allow_defer";}}s:4:"name";s:18:"javascript_enforce";s:11:"description";s:128:"Force a JavaScript file to be cached (ordinarily we can rely on this to be automated by require_javascript/javascript_tempcode).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:143:"The path to the javascript file in the cache (blank: no file) (defer: defer compilation through a script; only possible if $allow_defer is set)";}}s:19:"javascript_tempcode";a:6:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:1:{i:0;a:8:{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:7:"?string";s:11:"description";s:52:"Position to get JavaScript for (null: all positions)";s:11:"phpdoc_name";s:8:"position";s:3:"set";s:18:"null header footer";}}s:4:"name";s:19:"javascript_tempcode";s:11:"description";s:97:"Get Tempcode to tie in (to the HTML, in ) all the JavaScript files that have been required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:43:"The Tempcode to tie in the JavaScript files";}}s:20:"_javascript_tempcode";a:5:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:1:"j";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The javascript file required";s:11:"phpdoc_name";s:1:"j";}i:1;a:5:{s:4:"name";s:2:"js";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:53:"Tempcode object (will be written into if appropriate)";s:11:"phpdoc_name";s:2:"js";}i:2;a:7:{s:4:"name";s:7:"_minify";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:45:"Whether minifying (null: from what is cached)";s:11:"phpdoc_name";s:7:"_minify";}i:3;a:7:{s:4:"name";s:6:"_https";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:47:"Whether doing HTTPS (null: from what is cached)";s:11:"phpdoc_name";s:6:"_https";}i:4;a:7:{s:4:"name";s:7:"_mobile";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:60:"Whether operating in mobile mode (null: from what is cached)";s:11:"phpdoc_name";s:7:"_mobile";}i:5;a:7:{s:4:"name";s:10:"do_enforce";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:85:"Whether to generate the cached file if not already cached (null: from what is cached)";s:11:"phpdoc_name";s:10:"do_enforce";}}s:4:"name";s:20:"_javascript_tempcode";s:11:"description";s:75:"Get Tempcode to tie in (to the HTML, in ) for an individual CSS file.";s:5:"flags";a:0:{}}s:11:"require_css";a:5:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"css";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The CSS file required";s:11:"phpdoc_name";s:3:"css";}}s:4:"name";s:11:"require_css";s:11:"description";s:47:"Make sure that the given CSS file is loaded up.";s:5:"flags";a:0:{}}s:11:"css_enforce";a:6:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The CSS file required";s:11:"phpdoc_name";s:1:"c";}i:1;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:43:"The name of the theme (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}i:2;a:7:{s:4:"name";s:11:"allow_defer";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:94:"Allow the compilation to be deferred through a PHP call (useful for parallelising compilation)";s:11:"phpdoc_name";s:11:"allow_defer";}}s:4:"name";s:11:"css_enforce";s:11:"description";s:30:"Force a CSS file to be cached.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:136:"The path to the CSS file in the cache (blank: no file) (defer: defer compilation through a script; only possible if $allow_defer is set)";}}s:12:"css_tempcode";a:6:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:4:{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:16:"Force inline CSS";s:11:"phpdoc_name";s:6:"inline";}i:1;a:7:{s:4:"name";s:11:"only_global";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:18:"Only do global CSS";s:11:"phpdoc_name";s:11:"only_global";}i:2;a:7:{s:4:"name";s:7:"context";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:86:"HTML context for which we filter (minimise) any CSS we spit out as inline (null: none)";s:11:"phpdoc_name";s:7:"context";}i:3;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:43:"The name of the theme (null: current theme)";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:12:"css_tempcode";s:11:"description";s:90:"Get Tempcode to tie in (to the HTML, in ) all the CSS files that have been required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:36:"The Tempcode to tie in the CSS files";}}s:13:"_css_tempcode";a:5:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The CSS file required";s:11:"phpdoc_name";s:1:"c";}i:1;a:5:{s:4:"name";s:3:"css";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:58:"Main Tempcode object (will be written into if appropriate)";s:11:"phpdoc_name";s:3:"css";}i:2;a:5:{s:4:"name";s:15:"css_need_inline";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:60:"Inline Tempcode object (will be written into if appropriate)";s:11:"phpdoc_name";s:15:"css_need_inline";}i:3;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:18:"Only do global CSS";s:11:"phpdoc_name";s:6:"inline";}i:4;a:7:{s:4:"name";s:7:"context";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:86:"HTML context for which we filter (minimise) any CSS we spit out as inline (null: none)";s:11:"phpdoc_name";s:7:"context";}i:5;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:71:"The name of the theme (null: current theme) (null: from what is cached)";s:11:"phpdoc_name";s:5:"theme";}i:6;a:7:{s:4:"name";s:5:"_seed";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:81:"The seed colour (null: previous cached) (blank: none) (null: from what is cached)";s:11:"phpdoc_name";s:5:"_seed";}i:7;a:7:{s:4:"name";s:10:"_text_only";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:63:"Whether operating in text-only mode (null: from what is cached)";s:11:"phpdoc_name";s:10:"_text_only";}i:8;a:7:{s:4:"name";s:7:"_minify";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:45:"Whether minifying (null: from what is cached)";s:11:"phpdoc_name";s:7:"_minify";}i:9;a:7:{s:4:"name";s:6:"_https";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:47:"Whether doing HTTPS (null: from what is cached)";s:11:"phpdoc_name";s:6:"_https";}i:10;a:7:{s:4:"name";s:7:"_mobile";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:60:"Whether operating in mobile mode (null: from what is cached)";s:11:"phpdoc_name";s:7:"_mobile";}i:11;a:7:{s:4:"name";s:10:"do_enforce";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:57:"Whether to generate the cached file if not already cached";s:11:"phpdoc_name";s:10:"do_enforce";}}s:4:"name";s:13:"_css_tempcode";s:11:"description";s:75:"Get Tempcode to tie in (to the HTML, in ) for an individual CSS file.";s:5:"flags";a:0:{}}s:22:"_get_web_resources_env";a:6:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:5:"_seed";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:57:"The seed colour (blank: none) (null: from what is cached)";s:11:"phpdoc_name";s:5:"_seed";}i:1;a:7:{s:4:"name";s:7:"_minify";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:45:"Whether minifying (null: from what is cached)";s:11:"phpdoc_name";s:7:"_minify";}i:2;a:7:{s:4:"name";s:6:"_https";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:47:"Whether doing HTTPS (null: from what is cached)";s:11:"phpdoc_name";s:6:"_https";}i:3;a:7:{s:4:"name";s:7:"_mobile";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:60:"Whether operating in mobile mode (null: from what is cached)";s:11:"phpdoc_name";s:7:"_mobile";}}s:4:"name";s:22:"_get_web_resources_env";s:11:"description";s:45:"Get the environment needed for web resources.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:74:"A tuple: whether we are minify, if HTTPS is on, if mobile mode is on, seed";}}s:35:"_get_web_resource_grouping_codename";a:6:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"zone_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:36:"Current zone name (null: autodetect)";s:11:"phpdoc_name";s:9:"zone_name";}i:1;a:7:{s:4:"name";s:8:"is_admin";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:31:"Is for admin (null: autodetect)";s:11:"phpdoc_name";s:8:"is_admin";}}s:4:"name";s:35:"_get_web_resource_grouping_codename";s:11:"description";s:60:"Get web resource grouping codename for a particular context.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"Grouping codename";}}s:28:"_handle_web_resource_merging";a:6:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:5:{i:0;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"Resource type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:8:".css .js";}i:1;a:5:{s:4:"name";s:3:"arr";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:67:"Resources (map of keys to true), passed by reference as we alter it";s:11:"phpdoc_name";s:3:"arr";}i:2;a:5:{s:4:"name";s:6:"minify";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:19:"If we are minifying";s:11:"phpdoc_name";s:6:"minify";}i:3;a:5:{s:4:"name";s:5:"https";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"If we are using HTTPs";s:11:"phpdoc_name";s:5:"https";}i:4;a:5:{s:4:"name";s:6:"mobile";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"If we are using mobile";s:11:"phpdoc_name";s:6:"mobile";}}s:4:"name";s:28:"_handle_web_resource_merging";s:11:"description";s:143:"Handle web resource merging optimisation, for merging groups of CSS/JavaScript files that are used across the site, to reduce request quantity.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:142:"Resource name for merged file, which we assume is compiled (as this function makes it) (null: we don't know what is required / race condition)";}}s:39:"inject_web_resources_context_to_comcode";a:5:{s:8:"filename";s:25:"sources/web_resources.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"message_raw";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:7:"Comcode";s:11:"phpdoc_name";s:11:"message_raw";}}s:4:"name";s:39:"inject_web_resources_context_to_comcode";s:11:"description";s:101:"Add some Comcode that does resource-inclusion for CSS and Javascript files that are currently loaded.";s:5:"flags";a:0:{}}s:18:"init__webstandards";a:5:{s:8:"filename";s:24:"sources/webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"init__webstandards";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:11:"check_xhtml";a:6:{s:8:"filename";s:24:"sources/webstandards.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The XHTML to check";s:11:"phpdoc_name";s:3:"out";}i:1;a:7:{s:4:"name";s:16:"well_formed_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:120:"Whether to avoid checking for relational errors (false implies just a quick structural check, aka a 'well formed' check)";s:11:"phpdoc_name";s:16:"well_formed_only";}i:2;a:7:{s:4:"name";s:11:"is_fragment";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:79:"Whether what is being checked is an HTML fragment, rather than a whole document";s:11:"phpdoc_name";s:11:"is_fragment";}i:3;a:7:{s:4:"name";s:23:"webstandards_javascript";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:19:"Validate javascript";s:11:"phpdoc_name";s:23:"webstandards_javascript";}i:4;a:7:{s:4:"name";s:16:"webstandards_css";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:12:"Validate CSS";s:11:"phpdoc_name";s:16:"webstandards_css";}i:5;a:7:{s:4:"name";s:17:"webstandards_wcag";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:13:"Validate WCAG";s:11:"phpdoc_name";s:17:"webstandards_wcag";}i:6;a:7:{s:4:"name";s:19:"webstandards_compat";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Validate for compatibility";s:11:"phpdoc_name";s:19:"webstandards_compat";}i:7;a:7:{s:4:"name";s:22:"webstandards_ext_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:23:"Validate external files";s:11:"phpdoc_name";s:22:"webstandards_ext_files";}i:8;a:7:{s:4:"name";s:19:"webstandards_manual";s:7:"default";s:13:"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:"Bring up messages about manual checks";s:11:"phpdoc_name";s:19:"webstandards_manual";}}s:4:"name";s:11:"check_xhtml";s:11:"description";s:50:"Check the specified XHTML, and return the results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"?map";s:11:"description";s:34:"Error information (null: no error)";}}s:12:"_xhtml_error";a:6:{s:8:"filename";s:24:"sources/webstandards.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"error";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The error that occurred";s:11:"phpdoc_name";s:5:"error";}i:1;a:7:{s:4:"name";s:7:"param_a";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 first parameter of the error";s:11:"phpdoc_name";s:7:"param_a";}i:2;a:7:{s:4:"name";s:7:"param_b";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:33:"The second parameter of the error";s:11:"phpdoc_name";s:7:"param_b";}i:3;a:7:{s:4:"name";s:7:"param_c";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 third parameter of the error";s:11:"phpdoc_name";s:7:"param_c";}i:4;a:7:{s:4:"name";s:3:"raw";s:7:"default";s:13:"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 not do a lang lookup";s:11:"phpdoc_name";s:3:"raw";}i:5;a:7:{s:4:"name";s:7:"rel_pos";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:15:"Offset position";s:11:"phpdoc_name";s:7:"rel_pos";}}s:4:"name";s:12:"_xhtml_error";s:11:"description";s:69:"Get some general debugging information for an identified XHTML error.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:3:"map";s:11:"description";s:30:"A map of the error information";}}s:6:"is_hex";a:6:{s:8:"filename";s:24:"sources/webstandards.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:19:"The string to check";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:6:"is_hex";s:11:"description";s:53:"Checks to see if a string holds a hexadecimal number.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether the string holds a hexadecimal number";}}s:11:"test_entity";a:6:{s:8:"filename";s:24:"sources/webstandards.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"offset";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:15:"Checking offset";s:11:"phpdoc_name";s:6:"offset";}}s:4:"name";s:11:"test_entity";s:11:"description";s:42:"Test the next entity in the output stream.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"An array of error details (null: no errors)";}}s:12:"fix_entities";a:6:{s:8:"filename";s:24:"sources/webstandards.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:14:"Text to fix in";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:12:"fix_entities";s:11:"description";s:37:"Fix any invalid entities in the text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Fixed result";}}s:13:"_get_next_tag";a:6:{s:8:"filename";s:24:"sources/webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_get_next_tag";s:11:"description";s:47:"Get the next tag in the current XHTML document.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:95:"Either an array of error details, a string of the tag, or null for finished (null: no next tag)";}}s:10:"_check_tag";a:6:{s:8:"filename";s:24:"sources/webstandards.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the tag to check";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:45:"A map of attributes (name=>value) the tag has";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:10:"self_close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether this is a self-closing tag";s:11:"phpdoc_name";s:10:"self_close";}i:3;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether this is a closing tag";s:11:"phpdoc_name";s:5:"close";}i:4;a:5:{s:4:"name";s:6:"errors";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Errors detected so far. We will add to these and return";s:11:"phpdoc_name";s:6:"errors";}}s:4:"name";s:10:"_check_tag";s:11:"description";s:78:"Checks an XHTML tag for conformance, including attributes. Return the results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:56:"String for tag basis form, or array of error information";}}s:14:"_get_tag_basis";a:6:{s:8:"filename";s:24:"sources/webstandards.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"full";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The full tag";s:11:"phpdoc_name";s:4:"full";}}s:4:"name";s:14:"_get_tag_basis";s:11:"description";s:125:"Get the tag basis for the specified tag. e.g. ' ' would become 'br'. Note: tags with parameters given are not supported.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The basis of the tag";}}s:19:"init__webstandards2";a:5:{s:8:"filename";s:25:"sources/webstandards2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"init__webstandards2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:11:"__check_tag";a:6:{s:8:"filename";s:25:"sources/webstandards2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the tag to check";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:45:"A map of attributes (name=>value) the tag has";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:10:"self_close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether this is a self-closing tag";s:11:"phpdoc_name";s:10:"self_close";}i:3;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether this is a closing tag";s:11:"phpdoc_name";s:5:"close";}i:4;a:5:{s:4:"name";s:6:"errors";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Errors detected so far. We will add to these and return";s:11:"phpdoc_name";s:6:"errors";}}s:4:"name";s:11:"__check_tag";s:11:"description";s:78:"Checks an XHTML tag for conformance, including attributes. Return the results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:26:"Array of error information";}}s:17:"_check_blockyness";a:6:{s:8:"filename";s:25:"sources/webstandards2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the tag to check";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:45:"A map of attributes (name=>value) the tag has";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:10:"self_close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether this is a self-closing tag";s:11:"phpdoc_name";s:10:"self_close";}i:3;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether this is a closing tag";s:11:"phpdoc_name";s:5:"close";}}s:4:"name";s:17:"_check_blockyness";s:11:"description";s:54:"Checks a tag's inline/block/normal nesting situations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:28:"Array of errors (null: none)";}}s:17:"_check_attributes";a:6:{s:8:"filename";s:25:"sources/webstandards2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the tag to check";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:45:"A map of attributes (name=>value) the tag has";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:10:"self_close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether this is a self-closing tag";s:11:"phpdoc_name";s:10:"self_close";}i:3;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether this is a closing tag";s:11:"phpdoc_name";s:5:"close";}}s:4:"name";s:17:"_check_attributes";s:11:"description";s:26:"Checks a tag's attributes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:28:"Array of errors (null: none)";}}s:14:"check_spelling";a:6:{s:8:"filename";s:25:"sources/webstandards2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The text";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:14:"check_spelling";s:11:"description";s:33:"Checks the spelling of some text.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"Array of errors";}}s:16:"_check_externals";a:6:{s:8:"filename";s:25:"sources/webstandards2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the tag to check";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:45:"A map of attributes (name=>value) the tag has";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:10:"self_close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether this is a self-closing tag";s:11:"phpdoc_name";s:10:"self_close";}i:3;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether this is a closing tag";s:11:"phpdoc_name";s:5:"close";}}s:4:"name";s:16:"_check_externals";s:11:"description";s:53:"Checks the content under a tag's external references.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:28:"Array of errors (null: none)";}}s:25:"_check_link_accessibility";a:6:{s:8:"filename";s:25:"sources/webstandards2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the tag to check";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:45:"A map of attributes (name=>value) the tag has";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:10:"self_close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether this is a self-closing tag";s:11:"phpdoc_name";s:10:"self_close";}i:3;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether this is a closing tag";s:11:"phpdoc_name";s:5:"close";}}s:4:"name";s:25:"_check_link_accessibility";s:11:"description";s:26:"Checks link accessibility.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:28:"Array of errors (null: none)";}}s:16:"_check_labelling";a:6:{s:8:"filename";s:25:"sources/webstandards2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The name of the tag to check";s:11:"phpdoc_name";s:3:"tag";}i:1;a:5:{s:4:"name";s:10:"attributes";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:45:"A map of attributes (name=>value) the tag has";s:11:"phpdoc_name";s:10:"attributes";}i:2;a:5:{s:4:"name";s:10:"self_close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether this is a self-closing tag";s:11:"phpdoc_name";s:10:"self_close";}i:3;a:5:{s:4:"name";s:5:"close";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether this is a closing tag";s:11:"phpdoc_name";s:5:"close";}}s:4:"name";s:16:"_check_labelling";s:11:"description";s:28:"Checks form field labelling.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:28:"Array of errors (null: none)";}}s:9:"check_css";a:6:{s:8:"filename";s:25:"sources/webstandards2.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:27:"The data of the style sheet";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:9:"check_css";s:11:"description";s:38:"Checks a CSS style sheet (high level).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"?map";s:11:"description";s:34:"Error information (null: no error)";}}s:23:"_webstandards_css_sheet";a:6:{s:8:"filename";s:25:"sources/webstandards2.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:27:"The data of the style sheet";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:23:"_webstandards_css_sheet";s:11:"description";s:25:"Checks a CSS style sheet.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"?map";s:11:"description";s:34:"Error information (null: no error)";}}s:23:"_webstandards_css_class";a:6:{s:8:"filename";s:25:"sources/webstandards2.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:25:"The data of the CSS class";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:2:"_i";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"Current parse position";s:11:"phpdoc_name";s:2:"_i";}i:2;a:7:{s:4:"name";s:4:"line";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:78:"The higher-level line number we are checking for (to give better debug output)";s:11:"phpdoc_name";s:4:"line";}}s:4:"name";s:23:"_webstandards_css_class";s:11:"description";s:19:"Checks a CSS class.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"?map";s:11:"description";s:34:"Error information (null: no error)";}}s:16:"_check_css_value";a:6:{s:8:"filename";s:25:"sources/webstandards2.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:6:"string";s:11:"description";s:25:"The name of the attribute";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:6:"string";s:11:"description";s:26:"The value of the attribute";s:11:"phpdoc_name";s:5:"value";}i:2;a:5:{s:4:"name";s:2:"_i";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"Current parse position";s:11:"phpdoc_name";s:2:"_i";}}s:4:"name";s:16:"_check_css_value";s:11:"description";s:56:"Checks a CSS attribute/value combination is appropriate.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"?map";s:11:"description";s:34:"Error information (null: no error)";}}s:25:"init__webstandards_js_lex";a:5:{s:8:"filename";s:31:"sources/webstandards_js_lex.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"init__webstandards_js_lex";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:19:"webstandards_js_lex";a:6:{s:8:"filename";s:31:"sources/webstandards_js_lex.php";s:10:"parameters";a:1:{i:0;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 code";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:19:"webstandards_js_lex";s:11:"description";s:25:"Lex some JavaScript code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:20:"List of lexed tokens";}}s:18:"lex__get_next_char";a:6:{s:8:"filename";s:31:"sources/webstandards_js_lex.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"i";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"Get character at this position";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:18:"lex__get_next_char";s:11:"description";s:35:"Get the next character while lexing";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"Get triplet about the next character (whether end reached, new position, character)";}}s:19:"lex__get_next_chars";a:6:{s:8:"filename";s:31:"sources/webstandards_js_lex.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"i";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"Get character at this position";s:11:"phpdoc_name";s:1:"i";}i:1;a:5:{s:4:"name";s:3:"num";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"How many to get";s:11:"phpdoc_name";s:3:"num";}}s:4:"name";s:19:"lex__get_next_chars";s:11:"description";s:36:"Get the next characters while lexing";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:84:"Get triplet about the next character (whether end reached, new position, characters)";}}s:22:"js_pos_to_line_details";a:6:{s:8:"filename";s:31:"sources/webstandards_js_lex.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"i";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The position";s:11:"phpdoc_name";s:1:"i";}i:1;a:7:{s:4:"name";s:8:"absolute";s:7:"default";s:13:"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 the position is a string offset (as opposed to a token position)";s:11:"phpdoc_name";s:8:"absolute";}}s:4:"name";s:22:"js_pos_to_line_details";s:11:"description";s:67:"Convert a position to a triplet of details about the line it is on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"The quartet of details (line offset, line number, the line, the absolute position)";}}s:12:"js_die_error";a:6:{s:8:"filename";s:31:"sources/webstandards_js_lex.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"system";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The system causing the error";s:11:"phpdoc_name";s:6:"system";}i:1;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The position";s:11:"phpdoc_name";s:3:"pos";}i:2;a:5:{s:4:"name";s:4:"line";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The line";s:11:"phpdoc_name";s:4:"line";}i:3;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The error";s:11:"phpdoc_name";s:7:"message";}i:4;a:5:{s:4:"name";s:1:"i";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The global position";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:12:"js_die_error";s:11:"description";s:29:"Make a JS error (critically).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:24:"Always null (null: exit)";}}s:14:"js_log_warning";a:5:{s:8:"filename";s:31:"sources/webstandards_js_lex.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"system";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"The system causing the error";s:11:"phpdoc_name";s:6:"system";}i:1;a:5:{s:4:"name";s:7:"warning";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The warning";s:11:"phpdoc_name";s:7:"warning";}i:2;a:7:{s:4:"name";s:1:"i";s:7:"default";i:-1;s:11:"default_raw";s:2:"-1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The global position";s:11:"phpdoc_name";s:1:"i";}i:3;a:7:{s:4:"name";s:8:"absolute";s:7:"default";s:13:"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 the position is a string offset (as opposed to a token position)";s:11:"phpdoc_name";s:8:"absolute";}}s:4:"name";s:14:"js_log_warning";s:11:"description";s:43:"Log a warning when lexing/parsing/checking.";s:5:"flags";a:0:{}}s:17:"jlex__strlen_sort";a:6:{s:8:"filename";s:31:"sources/webstandards_js_lex.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:6:"string";s:11:"description";s:27:"The first string to compare";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:6:"string";s:11:"description";s:28:"The second string to compare";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:17:"jlex__strlen_sort";s:11:"description";s:58:"Helper function for usort to sort a list by string length.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The comparison result";}}s:26:"init__webstandards_js_lint";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"init__webstandards_js_lint";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:25:"reset_js_global_variables";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"reset_js_global_variables";s:11:"description";s:49:"Return the global variable array to the defaults.";s:5:"flags";a:0:{}}s:8:"check_js";a:6:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:2:{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:4:"Code";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:10:"raw_errors";s:7:"default";s:13:"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 return raw-errors";s:11:"phpdoc_name";s:10:"raw_errors";}}s:4:"name";s:8:"check_js";s:11:"description";s:35:"Check some JS code for conformance.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"Standard checker report output";}}s:9:"_check_js";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"structure";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:15:"Parse structure";s:11:"phpdoc_name";s:9:"structure";}}s:4:"name";s:9:"_check_js";s:11:"description";s:48:"Do the actual code check on the parse structure.";s:5:"flags";a:0:{}}s:17:"js_check_function";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:3:"map";s:11:"description";s:20:"The function details";s:11:"phpdoc_name";s:8:"function";}}s:4:"name";s:17:"js_check_function";s:11:"description";s:29:"Check a function declaration.";s:5:"flags";a:0:{}}s:22:"js_check_variable_list";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:18:"JS_LOCAL_VARIABLES";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The variable list";s:11:"phpdoc_name";s:18:"JS_LOCAL_VARIABLES";}}s:4:"name";s:22:"js_check_variable_list";s:11:"description";s:38:"Check a variable list for consistency.";s:5:"flags";a:0:{}}s:16:"js_check_command";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"command";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"The command";s:11:"phpdoc_name";s:7:"command";}i:1;a:5:{s:4:"name";s:5:"depth";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"The block depth we are searching at";s:11:"phpdoc_name";s:5:"depth";}}s:4:"name";s:16:"js_check_command";s:11:"description";s:23:"Check a parsed command.";s:5:"flags";a:0:{}}s:19:"js_check_assignment";a:6:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The complex assignment details";s:11:"phpdoc_name";s:1:"c";}i:1;a:5:{s:4:"name";s:5:"c_pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The position this is at in the parse";s:11:"phpdoc_name";s:5:"c_pos";}}s:4:"name";s:19:"js_check_assignment";s:11:"description";s:30:"Check an assignment statement.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The assigned type";}}s:19:"js_check_expression";a:6:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:1:"e";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:22:"The complex expression";s:11:"phpdoc_name";s:1:"e";}i:1;a:7:{s:4:"name";s:9:"secondary";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:164:"Whether the expression is being used as a command (i.e. whether the expression is not used for the result, but rather, the secondary consequences of calculating it)";s:11:"phpdoc_name";s:9:"secondary";}i:2;a:7:{s:4:"name";s:10:"is_guarded";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:75:"Whether the expression is being guarded and hence is not a proper reference";s:11:"phpdoc_name";s:10:"is_guarded";}}s:4:"name";s:19:"js_check_expression";s:11:"description";s:20:"Check an expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"The type";}}s:13:"js_check_call";a:6:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:63:"The (possibly complex) variable that is the function identifier";s:11:"phpdoc_name";s:1:"c";}i:1;a:5:{s:4:"name";s:5:"c_pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The position this is at in the parse";s:11:"phpdoc_name";s:5:"c_pos";}i:2;a:7:{s:4:"name";s:5:"class";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:78:"The class the given variable is in (null: global/as-specified-internally-in-c)";s:11:"phpdoc_name";s:5:"class";}}s:4:"name";s:13:"js_check_call";s:11:"description";s:22:"Check a function call.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:40:"The return type (null: nothing returned)";}}s:17:"js_check_variable";a:6:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"variable";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"The (possibly complex) variable";s:11:"phpdoc_name";s:8:"variable";}i:1;a:7:{s:4:"name";s:9:"reference";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether the variable is being used referentially (i.e. not being set)";s:11:"phpdoc_name";s:9:"reference";}i:2;a:7:{s:4:"name";s:16:"function_duality";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:83:"Whether to return the type and function-return-type pair, rather than just the type";s:11:"phpdoc_name";s:16:"function_duality";}i:3;a:7:{s:4:"name";s:5:"class";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:59:"The class the variable is referencing within (null: global)";s:11:"phpdoc_name";s:5:"class";}i:4;a:7:{s:4:"name";s:12:"allow_static";s:7:"default";s:13:"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 the given class is being referenced directly in static form";s:11:"phpdoc_name";s:12:"allow_static";}i:5;a:7:{s:4:"name";s:7:"is_call";s:7:"default";s:13:"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 this is for a function call";s:11:"phpdoc_name";s:7:"is_call";}}s:4:"name";s:17:"js_check_variable";s:11:"description";s:17:"Check a variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:64:"The return type and possibly function return type (if requested)";}}s:30:"js_scan_extractive_expressions";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"variable";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The complex variable";s:11:"phpdoc_name";s:8:"variable";}}s:4:"name";s:30:"js_scan_extractive_expressions";s:11:"description";s:73:"Scan through a complex variable, checking any expressions embedded in it.";s:5:"flags";a:0:{}}s:20:"js_get_variable_type";a:6:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"variable";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"The variable";s:11:"phpdoc_name";s:8:"variable";}}s:4:"name";s:20:"js_get_variable_type";s:11:"description";s:27:"Get the type of a variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"The type";}}s:19:"js_set_composr_type";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The variable name";s:11:"phpdoc_name";s:10:"identifier";}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:8:"The type";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:19:"js_set_composr_type";s:11:"description";s:52:"Add a type to the list of used types for a variable.";s:5:"flags";a:0:{}}s:25:"js_add_variable_reference";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"identifier";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The variable name";s:11:"phpdoc_name";s:10:"identifier";}i:1;a:5:{s:4:"name";s:13:"first_mention";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:42:"Where the first mention of the variable is";s:11:"phpdoc_name";s:13:"first_mention";}i:2;a:7:{s:4:"name";s:13:"instantiation";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether this is an instantiation reference";s:11:"phpdoc_name";s:13:"instantiation";}i:3;a:7:{s:4:"name";s:9:"reference";s:7:"default";s:13:"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 this is a reference (as opposed to instantiation/setting)";s:11:"phpdoc_name";s:9:"reference";}i:4;a:7:{s:4:"name";s:15:"function_return";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 result-type (null: not a function)";s:11:"phpdoc_name";s:15:"function_return";}i:5;a:7:{s:4:"name";s:7:"is_call";s:7:"default";s:13:"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 this is a function call";s:11:"phpdoc_name";s:7:"is_call";}}s:4:"name";s:25:"js_add_variable_reference";s:11:"description";s:36:"Add a reference to a named variable.";s:5:"flags";a:0:{}}s:41:"js_infer_expression_type_to_variable_type";a:5:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:2:{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:8:"The type";s:11:"phpdoc_name";s:4:"type";}i:1;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";}}s:4:"name";s:41:"js_infer_expression_type_to_variable_type";s:11:"description";s:181:"If the given expression is a direct variable expression, this function will infer the type as the given type. This therefore allows type inferring on usage as well as on assignment.";s:5:"flags";a:0:{}}s:14:"js_ensure_type";a:6:{s:8:"filename";s:32:"sources/webstandards_js_lint.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"_allowed_types";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"List of allowed types";s:11:"phpdoc_name";s:14:"_allowed_types";}i:1;a:5:{s:4:"name";s:11:"actual_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"Actual type involved";s:11:"phpdoc_name";s:11:"actual_type";}i:2;a:5:{s:4:"name";s:3:"pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"Current parse position";s:11:"phpdoc_name";s:3:"pos";}i:3;a:7:{s:4:"name";s:9:"alt_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:50:"Specific error message to give (null: use default)";s:11:"phpdoc_name";s:9:"alt_error";}}s:4:"name";s:14:"js_ensure_type";s:11:"description";s:40:"Do type checking for something specific.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether it type-checks";}}s:27:"init__webstandards_js_parse";a:5:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"init__webstandards_js_parse";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:21:"webstandards_js_parse";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"webstandards_js_parse";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"?map";s:11:"description";s:24:"Parse info (null: error)";}}s:25:"_webstandards_js_parse_js";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"_webstandards_js_parse_js";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"?map";s:11:"description";s:24:"Parse info (null: error)";}}s:30:"_webstandards_js_parse_command";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"_webstandards_js_parse_command";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:37:"_webstandards_js_parse_command_actual";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"_webstandards_js_parse_command_actual";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:30:"_webstandards_js_parse_if_rest";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"_webstandards_js_parse_if_rest";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:28:"_webstandards_js_parse_cases";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"_webstandards_js_parse_cases";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:35:"_webstandards_js_parse_function_dec";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"anonymous";s:7:"default";s:13:"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 this is an anonymous function";s:11:"phpdoc_name";s:9:"anonymous";}}s:4:"name";s:35:"_webstandards_js_parse_function_dec";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:33:"_webstandards_js_parse_expression";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"_webstandards_js_parse_expression";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:15:"precedence_sort";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"op_list";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Ops in";s:11:"phpdoc_name";s:7:"op_list";}}s:4:"name";s:15:"precedence_sort";s:11:"description";s:65:"Sort an unordered structure of operations into a precedence tree.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"Ops out";}}s:39:"_webstandards_js_parse_expression_inner";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"_webstandards_js_parse_expression_inner";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:37:"_webstandards_js_parse_identify_chain";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"variable";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"The variable";s:11:"phpdoc_name";s:8:"variable";}}s:4:"name";s:37:"_webstandards_js_parse_identify_chain";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:31:"_webstandards_js_parse_variable";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"_webstandards_js_parse_variable";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:38:"_webstandards_js_parse_variable_actual";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"_webstandards_js_parse_variable_actual";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:42:"_webstandards_js_parse_assignment_operator";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"_webstandards_js_parse_assignment_operator";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:30:"_webstandards_js_parse_literal";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"_webstandards_js_parse_literal";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:40:"_webstandards_js_parse_comma_expressions";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"allow_blanks";s:7:"default";s:13:"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 to allow blanks in the list";s:11:"phpdoc_name";s:12:"allow_blanks";}i:1;a:7:{s:4:"name";s:6:"closer";s:7:"default";s:13:"BRACKET_CLOSE";s:11:"default_raw";s:15:"'BRACKET_CLOSE'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The token to close the list";s:11:"phpdoc_name";s:6:"closer";}}s:4:"name";s:40:"_webstandards_js_parse_comma_expressions";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:38:"_webstandards_js_parse_comma_variables";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"allow_blanks";s:7:"default";s:13:"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 to allow blanks in the list";s:11:"phpdoc_name";s:12:"allow_blanks";}i:1;a:7:{s:4:"name";s:6:"closer";s:7:"default";s:13:"BRACKET_CLOSE";s:11:"default_raw";s:15:"'BRACKET_CLOSE'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The token to close the list";s:11:"phpdoc_name";s:6:"closer";}}s:4:"name";s:38:"_webstandards_js_parse_comma_variables";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:39:"_webstandards_js_parse_comma_parameters";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:17:"allow_expressions";s:7:"default";s:12:"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 allow expressions in this";s:11:"phpdoc_name";s:17:"allow_expressions";}i:1;a:7:{s:4:"name";s:6:"closer";s:7:"default";s:13:"BRACKET_CLOSE";s:11:"default_raw";s:15:"'BRACKET_CLOSE'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The token to close the list";s:11:"phpdoc_name";s:6:"closer";}i:2;a:7:{s:4:"name";s:9:"separator";s:7:"default";s:5:"EQUAL";s:11:"default_raw";s:7:"'EQUAL'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:61:"The token that sits as the 'separator' between name and value";s:11:"phpdoc_name";s:9:"separator";}}s:4:"name";s:39:"_webstandards_js_parse_comma_parameters";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:37:"_webstandards_js_parse_comma_commands";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"closer";s:7:"default";s:17:"COMMAND_TERMINATE";s:11:"default_raw";s:19:"'COMMAND_TERMINATE'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The token to close the list";s:11:"phpdoc_name";s:6:"closer";}}s:4:"name";s:37:"_webstandards_js_parse_comma_commands";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:32:"_webstandards_js_parse_parameter";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:17:"allow_expressions";s:7:"default";s:12:"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 allow expressions in this";s:11:"phpdoc_name";s:17:"allow_expressions";}i:1;a:7:{s:4:"name";s:9:"separator";s:7:"default";s:5:"EQUAL";s:11:"default_raw";s:7:"'EQUAL'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:61:"The token that sits as the 'separator' between name and value";s:11:"phpdoc_name";s:9:"separator";}}s:4:"name";s:32:"_webstandards_js_parse_parameter";s:11:"description";s:33:"Return parse info for parse type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"?list";s:11:"description";s:24:"Parse info (null: error)";}}s:13:"parser_expect";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"token";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The token we want";s:11:"phpdoc_name";s:5:"token";}}s:4:"name";s:13:"parser_expect";s:11:"description";s:83:"Expect a token during parsing. Give error if not found. Else give token parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:34:"The token parameters (null: error)";}}s:11:"parser_peek";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"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:71:"Whether we want all the token parameters (as opposed to just the first)";s:11:"phpdoc_name";s:3:"all";}}s:4:"name";s:11:"parser_peek";s:11:"description";s:28:"Peek to find the next token.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:57:"All the token parameters, or just the first (null: error)";}}s:16:"parser_peek_dist";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"d";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The distance";s:11:"phpdoc_name";s:1:"d";}i:1;a:7:{s:4:"name";s:1:"p";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:"Whether to start looking from (null: current position in parse)";s:11:"phpdoc_name";s:1:"p";}}s:4:"name";s:16:"parser_peek_dist";s:11:"description";s:45:"Peek to find the next token after a distance.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:39:"The first token parameter (null: error)";}}s:11:"parser_next";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"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:71:"Whether we want all the token parameters (as opposed to just the first)";s:11:"phpdoc_name";s:3:"all";}}s:4:"name";s:11:"parser_next";s:11:"description";s:32:"Find the next token and move on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:57:"All the token parameters, or just the first (null: error)";}}s:28:"webstandards_js_parser_error";a:6:{s:8:"filename";s:33:"sources/webstandards_js_parse.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The error";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:28:"webstandards_js_parser_error";s:11:"description";s:19:"Give a parse error.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?boolean";s:11:"description";s:24:"Always null (null: exit)";}}s:20:"render_wiki_post_box";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:6:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:20:"render_wiki_post_box";s:11:"description";s:61:"Get Tempcode for a Wiki+ post 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:20:"render_wiki_page_box";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:6:{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:28:"The database field row of it";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:7:"_SEARCH";s:11:"default_raw";s:9:"'_SEARCH'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The zone to use";s:11:"phpdoc_name";s:4:"zone";}i:2;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:3;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:4;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:5;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:20:"render_wiki_page_box";s:11:"description";s:61:"Get Tempcode for a Wiki+ post 'feature box' for the given row";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"A box for it, linking to the full page";}}s:13:"wiki_add_post";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:7:"page_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The page ID";s:11:"phpdoc_name";s:7:"page_id";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The new post";s:11:"phpdoc_name";s:7:"message";}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:34:"Whether the post will be validated";s:11:"phpdoc_name";s:9:"validated";}i:3;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:50:"The member doing the action (null: current member)";s:11:"phpdoc_name";s:6:"member";}i:4;a:7:{s:4:"name";s:17:"send_notification";s:7:"default";s:12:"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 send out a notification out";s:11:"phpdoc_name";s:17:"send_notification";}i:5;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:6;a:7:{s:4:"name";s:5:"views";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:26:"The number of views so far";s:11:"phpdoc_name";s:5:"views";}i:7;a:7:{s:4:"name";s:9:"edit_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:25:"The edit time (null: N/A)";s:11:"phpdoc_name";s:9:"edit_date";}}s:4:"name";s:13:"wiki_add_post";s:11:"description";s:17:"Edit a Wiki+ post";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The post ID";}}s:14:"wiki_edit_post";a:5:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The new post";s:11:"phpdoc_name";s:7:"message";}i:2;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:34:"Whether the post will be validated";s:11:"phpdoc_name";s:9:"validated";}i:3;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:50:"The member doing the action (null: current member)";s:11:"phpdoc_name";s:6:"member";}i:4;a:7:{s:4:"name";s:7:"page_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:33:"The page ID (null: do not change)";s:11:"phpdoc_name";s:7:"page_id";}i:5;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:6;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:7;a:7:{s:4:"name";s:5:"views";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:37:"Number of views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:8;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:14:"wiki_edit_post";s:11:"description";s:17:"Edit a Wiki+ post";s:5:"flags";a:0:{}}s:16:"wiki_delete_post";a:5:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:7:"post_id";}i:1;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:50:"The member doing the action (null: current member)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:16:"wiki_delete_post";s:11:"description";s:19:"Delete a Wiki+ post";s:5:"flags";a:0:{}}s:13:"wiki_add_page";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:11:{i:0;a:5:{s:4:"name";s:5:"title";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:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:20:"The page description";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:5:"notes";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:5:{s:4:"name";s:10:"hide_posts";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: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:50:"The member doing the action (null: current member)";s:11:"phpdoc_name";s:6:"member";}i:5;a:7:{s:4:"name";s:8:"add_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:24:"The add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:6;a:7:{s:4:"name";s:5:"views";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:26:"The number of views so far";s:11:"phpdoc_name";s:5:"views";}i:7;a:7:{s:4:"name";s:13:"meta_keywords";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:69:"Meta keywords for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:8;a:7:{s:4:"name";s:16:"meta_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:72:"Meta description for this resource (null: do not edit) (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}i:9;a:7:{s:4:"name";s:9:"edit_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:25:"The edit time (null: N/A)";s:11:"phpdoc_name";s:9:"edit_date";}i:10;a:7:{s:4:"name";s:17:"send_notification";s:7:"default";s:12:"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 send a notification";s:11:"phpdoc_name";s:17:"send_notification";}}s:4:"name";s:13:"wiki_add_page";s:11:"description";s:16:"Add a Wiki+ page";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The page ID";}}s:14:"wiki_edit_page";a:5:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:12:{i:0;a:5:{s:4:"name";s:7:"page_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The page ID";s:11:"phpdoc_name";s:7:"page_id";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:20:"The page description";s:11:"phpdoc_name";s:11:"description";}i:3;a:5:{s:4:"name";s:5:"notes";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:4;a:5:{s:4:"name";s:10:"hide_posts";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:5;a:5:{s:4:"name";s:13:"meta_keywords";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Meta keywords";s:11:"phpdoc_name";s:13:"meta_keywords";}i:6;a:5:{s:4:"name";s:16:"meta_description";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"Meta description";s:11:"phpdoc_name";s:16:"meta_description";}i:7;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:50:"The member doing the action (null: current member)";s:11:"phpdoc_name";s:6:"member";}i:8;a:7:{s:4:"name";s:9:"edit_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:91:"Edit time (null: either means current time, or if $null_is_literal, means reset to to null)";s:11:"phpdoc_name";s:9:"edit_time";}i:9;a:7:{s:4:"name";s:8:"add_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:30:"Add time (null: do not change)";s:11:"phpdoc_name";s:8:"add_time";}i:10;a:7:{s:4:"name";s:5:"views";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:27:"Views (null: do not change)";s:11:"phpdoc_name";s:5:"views";}i:11;a:7:{s:4:"name";s:15:"null_is_literal";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:89:"Determines whether some nulls passed mean 'use a default' or literally mean 'set to null'";s:11:"phpdoc_name";s:15:"null_is_literal";}}s:4:"name";s:14:"wiki_edit_page";s:11:"description";s:17:"Edit a Wiki+ page";s:5:"flags";a:0:{}}s:16:"wiki_delete_page";a:5:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"page_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The page ID";s:11:"phpdoc_name";s:7:"page_id";}}s:4:"name";s:16:"wiki_delete_page";s:11:"description";s:19:"Delete a Wiki+ page";s:5:"flags";a:0:{}}s:20:"get_param_wiki_chain";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"parameter_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:51:"The name of the GET parameter that stores the chain";s:11:"phpdoc_name";s:14:"parameter_name";}i:1;a:7:{s:4:"name";s:13:"default_value";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:50:"The default value for the chain (null: no default)";s:11:"phpdoc_name";s:13:"default_value";}}s:4:"name";s:20:"get_param_wiki_chain";s:11:"description";s:114:"Get a chain script parameter or just an ID, in which case it does more work), and converts it into a ID/chain pair";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:43:"An array of two elements: an ID and a chain";}}s:16:"wiki_breadcrumbs";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"chain";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:63:"The chain to convert (which should include the current page ID)";s:11:"phpdoc_name";s:5:"chain";}i:1;a:7:{s:4:"name";s:13:"current_title";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:87:"The title of the current Wiki+ page (if not given, it is looked up) (null: work it out)";s:11:"phpdoc_name";s:13:"current_title";}i:2;a:7:{s:4:"name";s:10:"final_link";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:117:"Whether to show the final breadcrumbs element with a link to it (all others will always have links if $links is true)";s:11:"phpdoc_name";s:10:"final_link";}i:3;a:7:{s:4:"name";s:5:"links";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to show links to pages in the breadcrumbs";s:11:"phpdoc_name";s:5:"links";}i:4;a:7:{s:4:"name";s:22:"this_link_virtual_root";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:85:"Whether to make the link as a virtual-root link (only applies if $final_link is true)";s:11:"phpdoc_name";s:22:"this_link_virtual_root";}}s:4:"name";s:16:"wiki_breadcrumbs";s:11:"description";s:49:"Convert a Wiki+ chain to a nice breadcrumb trail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"Breadcrumbs";}}s:17:"wiki_derive_chain";a:6:{s:8:"filename";s:16:"sources/wiki.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:40:"The ID of the page to derive a chain for";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}}s:4:"name";s:17:"wiki_derive_chain";s:11:"description";s:47:"Create a Wiki+ chain from the specified page ID";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The Wiki+ chain derived";}}s:36:"create_selection_list_wiki_page_tree";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:6:{i:0;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:10:"?AUTO_LINK";s:11:"description";s:48:"The Wiki+ page to select by default (null: none)";s:11:"phpdoc_name";s:6:"select";}i:1;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 Wiki+ page to look beneath (null: the root)";s:11:"phpdoc_name";s:2:"id";}i:2;a:7:{s:4:"name";s:11:"breadcrumbs";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:69:"Breadcrumbs built up so far, in recursion (blank: starting recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:3;a:7:{s:4:"name";s:15:"include_orphans";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to include orphaned pages in the breadcrumbs";s:11:"phpdoc_name";s:15:"include_orphans";}i:4;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:94:"Whether to create a compound list (gets pairs: Tempcode, and comma-separated list of children)";s:11:"phpdoc_name";s:17:"use_compound_list";}i:5;a:7:{s:4:"name";s:10:"ins_format";s:7:"default";s:13:"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 use titles in IDs after a ! (used on tree edit page)";s:11:"phpdoc_name";s:10:"ins_format";}}s:4:"name";s:36:"create_selection_list_wiki_page_tree";s:11:"description";s:113:"Get a nice formatted XHTML list of all the children beneath the specified Wiki+ page. This function is recursive.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:53:"Tempcode for the list / pair of Tempcode and compound";}}s:37:"_create_selection_list_wiki_page_tree";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"wiki_seen";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:84:"A list of pages we've already seen (we don't repeat them in multiple list positions)";s:11:"phpdoc_name";s:9:"wiki_seen";}i:1;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:48:"The Wiki+ page to select by default (null: none)";s:11:"phpdoc_name";s:6:"select";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:30:"The Wiki+ page to look beneath";s:11:"phpdoc_name";s:2:"id";}i:3;a:5:{s:4:"name";s:11:"breadcrumbs";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:69:"Breadcrumbs built up so far, in recursion (blank: starting recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:4;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:43:"The title of the Wiki+ page to look beneath";s:11:"phpdoc_name";s:5:"title";}i:5;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:94:"Whether to create a compound list (gets pairs: Tempcode, and comma-separated list of children)";s:11:"phpdoc_name";s:17:"use_compound_list";}i:6;a:7:{s:4:"name";s:10:"ins_format";s:7:"default";s:13:"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 use titles in IDs after a ! (used on tree edit page)";s:11:"phpdoc_name";s:10:"ins_format";}}s:4:"name";s:37:"_create_selection_list_wiki_page_tree";s:11:"description";s:130:"Helper function. Get a nice formatted XHTML list of all the children beneath the specified Wiki+ page. This function is recursive.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:53:"Tempcode for the list / pair of Tempcode and compound";}}s:18:"get_wiki_page_tree";a:6:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:9:"wiki_seen";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:84:"A list of pages we've already seen (we don't repeat them in multiple list positions)";s:11:"phpdoc_name";s:9:"wiki_seen";}i:1;a:7:{s:4:"name";s:7:"page_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:66:"The page being at the root of our recursion (null: true root page)";s:11:"phpdoc_name";s:7:"page_id";}i:2;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:7:"?string";s:11:"description";s:97:"The breadcrumbs up to this point in the recursion (null: blank, as we are starting the recursion)";s:11:"phpdoc_name";s:11:"breadcrumbs";}i:3;a:7:{s:4:"name";s:12:"page_details";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:183:"The details of the $page_id we are currently going through (null: look it up). This is here for efficiency reasons, as finding children IDs to recurse to also reveals the childs title";s:11:"phpdoc_name";s:12:"page_details";}i:4;a:7:{s:4:"name";s:8:"do_stats";s:7:"default";s:13:"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 collect post counts with our breadcrumbs information";s:11:"phpdoc_name";s:8:"do_stats";}i:5;a:7:{s:4:"name";s:17:"use_compound_list";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:99:"Whether to make a compound list (a pair of a comma-separated list of children, and the child array)";s:11:"phpdoc_name";s:17:"use_compound_list";}i:6;a:7:{s:4:"name";s:6:"levels";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 number of recursive levels to search (null: all)";s:11:"phpdoc_name";s:6:"levels";}}s:4:"name";s:18:"get_wiki_page_tree";s:11:"description";s:128:"Get a list of maps containing all the subpages, and path information, of the specified page - and those beneath it, recursively.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:245:"A list of maps for all subcategories. Each map entry containins the fields 'id' (category ID) and 'breadcrumbs' (path to the category, including the categories own title). There is also an additional 'downloadcount' entry if stats were requested";}}s:31:"dispatch_wiki_post_notification";a:5:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"post_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:7:"post_id";}i:1;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The action type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:8:"ADD EDIT";}}s:4:"name";s:31:"dispatch_wiki_post_notification";s:11:"description";s:42:"Dispatch a notification about a Wiki+ post";s:5:"flags";a:0:{}}s:31:"dispatch_wiki_page_notification";a:5:{s:8:"filename";s:16:"sources/wiki.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"page_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:11:"The page ID";s:11:"phpdoc_name";s:7:"page_id";}i:1;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The action type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:8:"ADD EDIT";}}s:4:"name";s:31:"dispatch_wiki_page_notification";s:11:"description";s:42:"Dispatch a notification about a Wiki+ page";s:5:"flags";a:0:{}}s:18:"get_num_wiki_pages";a:6:{s:8:"filename";s:22:"sources/wiki_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_num_wiki_pages";s:11:"description";s:56:"Get the number of Wiki+ pages currently in the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:41:"The number of pages in the Wiki+ database";}}s:18:"get_num_wiki_posts";a:6:{s:8:"filename";s:22:"sources/wiki_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_num_wiki_posts";s:11:"description";s:56:"Get the number of Wiki+ posts currently in the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:41:"The number of posts in the Wiki+ database";}}s:16:"init__wordfilter";a:5:{s:8:"filename";s:22:"sources/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"init__wordfilter";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:16:"check_wordfilter";a:6:{s:8:"filename";s:22:"sources/wordfilter.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:1:"a";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The sentence to check";s:11:"phpdoc_name";s:1:"a";}i:1;a:7:{s:4:"name";s:4:"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:211:"The name of the parameter this is coming from. Certain parameters are not checked, for reasons of efficiency (avoiding loading whole word check list if not needed) (null: don't know param, do not check to avoid)";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:6:"no_die";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:81:"Whether to avoid dying on fully blocked words (useful if importing, for instance)";s:11:"phpdoc_name";s:6:"no_die";}i:3;a:7:{s:4:"name";s:12:"try_patterns";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:59:"Whether to try pattern matching (this takes more resources)";s:11:"phpdoc_name";s:12:"try_patterns";}i:4;a:7:{s:4:"name";s:10:"perm_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:69:"Whether to allow permission-based skipping, and length-based skipping";s:11:"phpdoc_name";s:10:"perm_check";}}s:4:"name";s:16:"check_wordfilter";s:11:"description";s:141:"Check the specified text ($a) for banned words.If any are found, and the member cannot bypass the word filter, an error message is displayed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:""Fixed" version";}}s:20:"warn_exit_wordfilter";a:6:{s:8:"filename";s:22:"sources/wordfilter.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:8:"?ID_TEXT";s:11:"description";s:211:"The name of the parameter this is coming from. Certain parameters are not checked, for reasons of efficiency (avoiding loading whole word check list if not needed) (null: don't know param, do not check to avoid)";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"Error message";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:20:"warn_exit_wordfilter";s:11:"description";s:41:"Exit with a message about word-filtering.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:17:"hide_the_evidence";a:6:{s:8:"filename";s:17:"sources/xhtml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"What to hide away";s:11:"phpdoc_name";s:4:"html";}}s:4:"name";s:17:"hide_the_evidence";s:11:"description";s:91:"Function that tucks-under-the-carpet lumps of XHTML that knowingly won't conform to XHTML5.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"Hidden away version";}}s:13:"xhtmlise_html";a:6:{s:8:"filename";s:17:"sources/xhtml.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"The XHTML string to convert to XHTML";s:11:"phpdoc_name";s:4:"html";}i:1;a:7:{s:4:"name";s:15:"definitely_want";s:7:"default";s:13:"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 to force a repair even if we aren't enforcing XHTML strictness";s:11:"phpdoc_name";s:15:"definitely_want";}i:2;a:7:{s:4:"name";s:7:"snippet";s:7:"default";s:13:"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 this is a partial snippet of HTML, embeddable in some unknown context";s:11:"phpdoc_name";s:7:"snippet";}}s:4:"name";s:13:"xhtmlise_html";s:11:"description";s:108:"Function that 'fixes' HTML (or bad XHTML) enough for it to pass most basic structural webstandards checking.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The converted string";}}s:17:"extract_html_body";a:6:{s:8:"filename";s:17:"sources/xhtml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The document";s:11:"phpdoc_name";s:4:"html";}}s:4:"name";s:17:"extract_html_body";s:11:"description";s:48:"Turn a full HTML document into an HTML fragment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"The fragment";}}s:12:"xhtml_substr";a:6:{s:8:"filename";s:17:"sources/xhtml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The text to perform on.";s:11:"phpdoc_name";s:4:"html";}i:1;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"The start position of the cut (HTML tags will be taken from before this though).";s:11:"phpdoc_name";s:4:"from";}i:2;a:7:{s:4:"name";s:6:"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:66:"The length you want the concatenated text to be (null: go to end).";s:11:"phpdoc_name";s:6:"length";}i:3;a:7:{s:4:"name";s:11:"literal_pos";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:109:"Whether to do a substr based on literal position in XHTML, rather than based on number of visible characters.";s:11:"phpdoc_name";s:11:"literal_pos";}i:4;a:7:{s:4:"name";s:8:"ellipses";s:7:"default";s:13:"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 to add ellipses.";s:11:"phpdoc_name";s:8:"ellipses";}i:5;a:7:{s:4:"name";s:30:"grammar_completeness_tolerance";s:7:"default";d:0;s:11:"default_raw";s:3:"0.0";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:143:"A fraction of the length we may exceed by in order to maintain grammar tolerance (finish sentences, finish paragraphs, finish the whole thing).";s:11:"phpdoc_name";s:30:"grammar_completeness_tolerance";}}s:4:"name";s:12:"xhtml_substr";s:11:"description";s:129:"XHTML-aware substring extraction. Note that it will strip images, linebreaks, rules, etc - it's intended really for inline XHTML.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The result.";}}s:26:"_smart_grammar_says_futile";a:6:{s:8:"filename";s:17:"sources/xhtml.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"nieve_end_pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The nieve position where we'd end on.";s:11:"phpdoc_name";s:13:"nieve_end_pos";}i:1;a:5:{s:4:"name";s:30:"grammar_completeness_tolerance";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:143:"A fraction of the length we may exceed by in order to maintain grammar tolerance (finish sentences, finish paragraphs, finish the whole thing).";s:11:"phpdoc_name";s:30:"grammar_completeness_tolerance";}i:2;a:5:{s:4:"name";s:11:"real_offset";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"Current offset in the text.";s:11:"phpdoc_name";s:11:"real_offset";}i:3;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The text to perform on.";s:11:"phpdoc_name";s:4:"html";}i:4;a:5:{s:4:"name";s:14:"desired_length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:33:"Desired (nieve) substring length.";s:11:"phpdoc_name";s:14:"desired_length";}}s:4:"name";s:26:"_smart_grammar_says_futile";s:11:"description";s:101:"XHTML-aware helper function to try and get to a nice grammatical point to call our substring termius.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to keep continuing.";}}s:28:"_smart_grammar_says_continue";a:6:{s:8:"filename";s:17:"sources/xhtml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:13:"nieve_end_pos";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:37:"The nieve position where we'd end on.";s:11:"phpdoc_name";s:13:"nieve_end_pos";}i:1;a:5:{s:4:"name";s:30:"grammar_completeness_tolerance";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:143:"A fraction of the length we may exceed by in order to maintain grammar tolerance (finish sentences, finish paragraphs, finish the whole thing).";s:11:"phpdoc_name";s:30:"grammar_completeness_tolerance";}i:2;a:5:{s:4:"name";s:11:"real_offset";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"Current offset in the text.";s:11:"phpdoc_name";s:11:"real_offset";}i:3;a:5:{s:4:"name";s:4:"html";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The text to perform on.";s:11:"phpdoc_name";s:4:"html";}i:4;a:5:{s:4:"name";s:14:"desired_length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:33:"Desired (nieve) substring length.";s:11:"phpdoc_name";s:14:"desired_length";}i:5;a:7:{s:4:"name";s:13:"testing_ahead";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:154:"Whether this is a cursory look-ahead rather than a byte-by-byte callback (therefore skip fine-grained checks which would interfere with a cursory result).";s:11:"phpdoc_name";s:13:"testing_ahead";}}s:4:"name";s:28:"_smart_grammar_says_continue";s:11:"description";s:101:"XHTML-aware helper function to try and get to a nice grammatical point to call our substring termius.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to keep continuing.";}}s:16:"get_xml_entities";a:6:{s:8:"filename";s:15:"sources/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_xml_entities";s:11:"description";s:49:"Get XML definition of common entities we may use.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:3:"XML";}}s:11:"xmlentities";a:6:{s:8:"filename";s:15:"sources/xml.php";s:10:"parameters";a:2:{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:12:"Input string";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:7:"charset";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:23:"Charset (null: current)";s:11:"phpdoc_name";s:7:"charset";}}s:4:"name";s:11:"xmlentities";s:11:"description";s:28:"XML escape the input string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"Escaped version of input string";}}s:20:"convert_bad_entities";a:6:{s:8:"filename";s:15:"sources/xml.php";s:10:"parameters";a:2:{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:29:"HTML to convert entities from";s:11:"phpdoc_name";s:4:"data";}i:1;a:7:{s:4:"name";s:7:"charset";s:7:"default";s:10:"ISO-8859-1";s:11:"default_raw";s:12:"'ISO-8859-1'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:58:"The character set we are using for $data (both in and out)";s:11:"phpdoc_name";s:7:"charset";}}s:4:"name";s:20:"convert_bad_entities";s:11:"description";s:62:"Convert HTML entities to plain characters for XML conformance.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Valid XHTML";}}s:7:"xml_rpc";a:6:{s:8:"filename";s:18:"sources/xmlrpc.php";s:10:"parameters";a:4:{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:20:"The XML-RPC call URL";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:6:"method";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The method name to call.";s:11:"phpdoc_name";s:6:"method";}i:2;a:5:{s:4:"name";s:6:"params";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"An array of parameters.";s:11:"phpdoc_name";s:6:"params";}i:3;a:7:{s:4:"name";s:14:"accept_failure";s:7:"default";s:13:"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 accept failure.";s:11:"phpdoc_name";s:14:"accept_failure";}}s:4:"name";s:7:"xml_rpc";s:11:"description";s:86:"Do a highly-simplified XML-RPC request (no actual calling supported - just messaging).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:26:"The result (null: failed).";}}s:21:"_xml_rpc_type_convert";a:6:{s:8:"filename";s:18:"sources/xmlrpc.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"_value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:4:"Data";s:11:"phpdoc_name";s:6:"_value";}}s:4:"name";s:21:"_xml_rpc_type_convert";s:11:"description";s:36:"Convert some data to XML-RPC format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:22:"XML-RPC format version";}}s:15:"zip_scan_folder";a:6:{s:8:"filename";s:15:"sources/zip.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:34:"The full path to the folder to add";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:7:"subpath";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:172:"The subpath relative to the path (should be left as the default '', as this is used for the recursion to distinguish the adding base path from where it's currently looking)";s:11:"phpdoc_name";s:7:"subpath";}}s:4:"name";s:15:"zip_scan_folder";s:11:"description";s:51:"Find file meta information for adding to a ZIP file";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:61:"A list of maps that stores time,full_path,name, for each file";}}s:10:"crc32_file";a:6:{s:8:"filename";s:15:"sources/zip.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:8:"The file";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:10:"crc32_file";s:11:"description";s:64:"Calculate CRC32 for a file. Based on a function in the PHP docs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:21:"The CRC (null: error)";}}s:15:"create_zip_file";a:6:{s:8:"filename";s:15:"sources/zip.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"file_array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:71:"A list of maps (time,data/full_path,name) covering everything to ZIP up";s:11:"phpdoc_name";s:10:"file_array";}i:1;a:7:{s:4:"name";s:6:"stream";s:7:"default";s:13:"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 to stream the output direct to the browser";s:11:"phpdoc_name";s:6:"stream";}i:2;a:7:{s:4:"name";s:11:"get_offsets";s:7:"default";s:13:"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 return the tuple";s:11:"phpdoc_name";s:11:"get_offsets";}i:3;a:7:{s:4:"name";s:12:"outfile_path";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?PATH";s:11:"description";s:64:"File to spool into (null: none). $stream will be forced to false";s:11:"phpdoc_name";s:12:"outfile_path";}}s:4:"name";s:15:"create_zip_file";s:11:"description";s:18:"Create a ZIP file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:121:"The data for the ZIP file OR a tuple: data, offsets, sizes; will be blank if $stream is true or $outfile_path is not null";}}s:11:"init__zones";a:5:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"init__zones";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:30:"preload_block_internal_caching";a:5:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"preload_block_internal_caching";s:11:"description";s:29:"Pre-load used blocks in bulk.";s:5:"flags";a:0:{}}s:18:"i_solemnly_declare";a:5:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"declarations";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"Bitmask of declarations (I_UNDERSTAND_* constants).";s:11:"phpdoc_name";s:12:"declarations";}}s:4:"name";s:18:"i_solemnly_declare";s:11:"description";s:515:"Declare what security properties the programmer understands. i.e. Self-certification.A good programmer will understand the correct data conversions to undergo in order to write secure/correct/reliable code.A newbie programmer likely will not, sloppiness or a lack of understanding could lead to critical mistakes.If declarations aren't made then extra security precautions are taken, which may interfere with normal processing in limited cases.Declarations should be made whenever entering a custom block or module.";s:5:"flags";a:0:{}}s:15:"_solemnly_enter";a:5:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"_solemnly_enter";s:11:"description";s:59:"Enter a new security scope (i.e. a custom block or module).";s:5:"flags";a:0:{}}s:15:"_solemnly_leave";a:5:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"out";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?string";s:11:"description";s:75:"Output to filter, if I_UNDERSTAND_XSS is not set (null: nothing to filter).";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:15:"_solemnly_leave";s:11:"description";s:69:"Leave the most recent security scope (i.e. a custom block or module).";s:5:"flags";a:0:{}}s:21:"has_solemnly_declared";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"declaration";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"The property.";s:11:"phpdoc_name";s:11:"declaration";}}s:4:"name";s:21:"has_solemnly_declared";s:11:"description";s:66:"Find if a security property has been declared as being understood.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it is understood.";}}s:25:"zone_black_magic_filterer";a:6:{s:8:"filename";s:17:"sources/zones.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:40:"The path, assuming in the obvious place.";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:8:"relative";s:7:"default";s:13:"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:"Where the passed path is relative.";s:11:"phpdoc_name";s:8:"relative";}}s:4:"name";s:25:"zone_black_magic_filterer";s:11:"description";s:101:"Consider virtual zone merging, where paths are not necessarily where you'd expect for pages in zones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:15:"The fixed path.";}}s:17:"find_comcode_page";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:3:{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:28:"The language most preferable";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:4:"file";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:"file";}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:8:"The zone";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:17:"find_comcode_page";s:11:"description";s:50:"Find the filebase-relative path of a Comcode page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:86:"A triple: The file base, The path (blank: not found), Combined path (blank: not found)";}}s:13:"get_zone_name";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_zone_name";s:11:"description";s:65:"Get the name of the zone the current page request is coming from.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The current zone";}}s:19:"load_redirect_cache";a:5:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"load_redirect_cache";s:11:"description";s:23:"Load up redirect cache.";s:5:"flags";a:0:{}}s:15:"get_module_zone";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:11:"module_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The page name to find";s:11:"phpdoc_name";s:11:"module_name";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";s:7:"modules";s:11:"default_raw";s:9:"'modules'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:39:"The type of the page we are looking for";s:11:"phpdoc_name";s:4:"type";}i:2;a:7:{s:4:"name";s:4:"dir2";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:100:"The special subcategorisation of page we are looking for (e.g. 'EN' for a Comcode page) (null: none)";s:11:"phpdoc_name";s:4:"dir2";}i:3;a:7:{s:4:"name";s:5:"ftype";s:7:"default";s:3:"php";s:11:"default_raw";s:5:"'php'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"The file extension for the page type";s:11:"phpdoc_name";s:5:"ftype";}i:4;a:7:{s:4:"name";s:5:"error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:57:"Whether Composr should bomb out if the page was not found";s:11:"phpdoc_name";s:5:"error";}i:5;a:7:{s:4:"name";s:15:"check_redirects";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether to check against redirects";s:11:"phpdoc_name";s:15:"check_redirects";}}s:4:"name";s:15:"get_module_zone";s:11:"description";s:27:"Find the zone a page is in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:41:"The zone the page is in (null: not found)";}}s:16:"get_comcode_zone";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"page_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The Comcode page name to find";s:11:"phpdoc_name";s:9:"page_name";}i:1;a:7:{s:4:"name";s:5:"error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:57:"Whether Composr should bomb out if the page was not found";s:11:"phpdoc_name";s:5:"error";}}s:4:"name";s:16:"get_comcode_zone";s:11:"description";s:35:"Find the zone a Comcode page is in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:47:"The zone the Comcode page is in (null: missing)";}}s:13:"get_page_zone";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"page_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The page name to find";s:11:"phpdoc_name";s:9:"page_name";}i:1;a:7:{s:4:"name";s:5:"error";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:57:"Whether Composr should bomb out if the page was not found";s:11:"phpdoc_name";s:5:"error";}}s:4:"name";s:13:"get_page_zone";s:11:"description";s:27:"Find the zone a page is in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:39:"The zone the page is in (null: missing)";}}s:20:"load_minimodule_page";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:36:"The relative path to the module file";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:3:"out";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?object";s:11:"description";s:73:"Semi-filled output template (null: definitely not doing output streaming)";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:20:"load_minimodule_page";s:11:"description";s:61:"Runs the specified mini-module.The module result is returned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The result of executing the module";}}s:15:"_load_mini_code";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:34:"The relative path to the code file";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:3:"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:33:"The block parameters (null: none)";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:15:"_load_mini_code";s:11:"description";s:139:"Runs the specified mini-module/mini-block (actually, any simply-written PHP code).The returned/output result is returned, in Tempcode form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:32:"The result of executing the code";}}s:16:"load_module_page";a:6:{s:8:"filename";s:17:"sources/zones.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:4:"PATH";s:11:"description";s:36:"The relative path to the module file";s:11:"phpdoc_name";s:6:"string";}i:1;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The page name to load";s:11:"phpdoc_name";s:8:"codename";}i:2;a:7:{s:4:"name";s:3:"out";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:7:"?object";s:11:"description";s:73:"Semi-filled output template (null: definitely not doing output streaming)";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:16:"load_module_page";s:11:"description";s:154:"Runs the specified module, but also update any stats for the module, and check to see if it needs upgrading or reinstalling.The module result is returned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:34:"The result of executing the module";}}s:14:"find_all_zones";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:5:{i:0;a:7:{s:4:"name";s:6:"search";s:7:"default";s:13:"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 search the file system and return zones that might not be fully in the system (otherwise will just use the database)";s:11:"phpdoc_name";s:6:"search";}i:1;a:7:{s:4:"name";s:10:"get_titles";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether to get titles for the zones as well. Only if !$search";s:11:"phpdoc_name";s:10:"get_titles";}i:2;a:7:{s:4:"name";s:9:"force_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:109:"Whether to insist on getting all zones without $start/$max parameters (there could be thousands in theory...)";s:11:"phpdoc_name";s:9:"force_all";}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:64:"Start position to get results from (ignored if $force_all is on)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";i:50;s:11:"default_raw";s:2:"50";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"Maximum zones to get";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:14:"find_all_zones";s:11:"description";s:56:"Find the installed zones, up to the first $max installed";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:79:"A list of zone names / a list of quartets (name, title, default page, zone row)";}}s:29:"cache_module_installed_status";a:5:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"cache_module_installed_status";s:11:"description";s:48:"Look up and remember what modules are installed.";s:5:"flags";a:0:{}}s:16:"module_installed";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The module name";s:11:"phpdoc_name";s:6:"module";}}s:4:"name";s:16:"module_installed";s:11:"description";s:38:"Check to see if a module is installed.";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:"_get_module_path";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The module name";s:11:"phpdoc_name";s:6:"module";}}s:4:"name";s:16:"_get_module_path";s:11:"description";s:55:"Get the path to a module known to be in a certain zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:15:"The module path";}}s:14:"find_all_hooks";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The type of hook";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:32:"blocks endpoints modules systems";}i:1;a:5:{s:4:"name";s:5:"entry";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:75:"The hook class to find hook implementations for (e.g. the name of a module)";s:11:"phpdoc_name";s:5:"entry";}}s:4:"name";s:14:"find_all_hooks";s:11:"description";s:62:"Get an array of all the hook implementations for a hook class.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:61:"A map of hook implementation name to [sources|sources_custom]";}}s:19:"block_cache_default";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The block name";s:11:"phpdoc_name";s:8:"codename";}}s:4:"name";s:19:"block_cache_default";s:11:"description";s:45:"Find the default caching setting for a block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"The default caching setting";}}s:12:"get_block_id";a:6:{s:8:"filename";s:17:"sources/zones.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:23:"The block parameter map";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:12:"get_block_id";s:11:"description";s:42:"Get a unique ID representing a block call.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The block ID";}}s:8:"do_block";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The block name";s:11:"phpdoc_name";s:8:"codename";}i:1;a:7:{s:4:"name";s:3:"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:45:"The block parameter map (null: no parameters)";s:11:"phpdoc_name";s:3:"map";}i:2;a:7:{s:4:"name";s:3:"ttl";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 TTL to use in minutes (null: block default)";s:11:"phpdoc_name";s:3:"ttl";}}s:4:"name";s:8:"do_block";s:11:"description";s:177:"Get the processed Tempcode for the specified block. Please note that you pass multiple parameters in as an array, but single parameters go in as a string or other flat variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The generated Tempcode";}}s:19:"apply_quick_caching";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"_cache";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Input Tempcode";s:11:"phpdoc_name";s:6:"_cache";}}s:4:"name";s:19:"apply_quick_caching";s:11:"description";s:152:"Simplify some Tempcode (losing dynamicness), for the quick cache option.Includes remove of contextual URL parameters for neutrality within quick cache.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Output Tempcode";}}s:25:"get_block_ajax_submit_map";a:6:{s:8:"filename";s:17:"sources/zones.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:14:"The parameters";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:25:"get_block_ajax_submit_map";s:11:"description";s:63:"Get Comcode used for a block to submit back to itself via AJAX.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:34:"Parameters for a Comcode block tag";}}s:23:"block_params_arr_to_str";a:6:{s:8:"filename";s:17:"sources/zones.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:45:"The parameters / acceptable parameter pattern";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:23:"block_params_arr_to_str";s:11:"description";s:83:"Convert a parameter set from a an array (for PHP code) to a string (for templates).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:73:"The parameters / acceptable parameter pattern, as template safe parameter";}}s:23:"block_params_str_to_arr";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"_map";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:73:"The parameters / acceptable parameter pattern, as template safe parameter";s:11:"phpdoc_name";s:4:"_map";}i:1;a:7:{s:4:"name";s:18:"block_symbol_style";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:88:"Whether to leave in block symbol style (i.e. like {$BLOCK} would take, a list not a map)";s:11:"phpdoc_name";s:18:"block_symbol_style";}}s:4:"name";s:23:"block_params_str_to_arr";s:11:"description";s:81:"Convert a parameter set from a string (for templates) to an array (for PHP code).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:45:"The parameters / acceptable parameter pattern";}}s:18:"do_block_hunt_file";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The block name";s:11:"phpdoc_name";s:8:"codename";}i:1;a:7:{s:4:"name";s:3:"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:45:"The block parameter map (null: no parameters)";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:18:"do_block_hunt_file";s:11:"description";s:48:"Get the block object for a given block codename.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:114:"A pair: Either the block object, or the string output of a miniblock ; and whether we entered a new security scope";}}s:18:"get_block_info_row";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"codename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The block name";s:11:"phpdoc_name";s:8:"codename";}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:23:"The block parameter map";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:18:"get_block_info_row";s:11:"description";s:36:"Get standardised info about a block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:51:"The block info (null: cannot cache for some reason)";}}s:29:"do_block_get_cache_identifier";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"cache_on";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:192:"PHP expression over $map (the parameter map of the block) OR a call_user_func specifier that will return a result (which will be used if caching is really very important, even for Hip Hop PHP)";s:11:"phpdoc_name";s:8:"cache_on";}i:1;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:45:"The block parameter map (null: no parameters)";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:29:"do_block_get_cache_identifier";s:11:"description";s:173:"Takes a string which is a PHP expression over $map (parameter map), and returns a derived identifier.We see if we have something cached by looking for a matching identifier.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:94:"The derived cache identifier (null: the identifier is CURRENTLY null meaning cannot be cached)";}}s:15:"_get_block_path";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the block";s:11:"phpdoc_name";s:5:"block";}}s:4:"name";s:15:"_get_block_path";s:11:"description";s:56:"Gets the path to a block code file for a block code name";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:21:"The path to the block";}}s:15:"block_installed";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The module name";s:11:"phpdoc_name";s:5:"block";}}s:4:"name";s:15:"block_installed";s:11:"description";s:37:"Check to see if a block is installed.";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:19:"find_all_pages_wrap";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:5:{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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}i:1;a:7:{s:4:"name";s:11:"keep_ext_on";s:7:"default";s:13:"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 leave file extensions on the page name";s:11:"phpdoc_name";s:11:"keep_ext_on";}i:2;a:7:{s:4:"name";s:18:"consider_redirects";s:7:"default";s:13:"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 to take transparent redirects into account";s:11:"phpdoc_name";s:18:"consider_redirects";}i:3;a:8:{s:4:"name";s:11:"show_method";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:28:"Selection algorithm constant";s:11:"phpdoc_name";s:11:"show_method";s:3:"set";s:5:"0 1 2";}i:4;a:8:{s:4:"name";s:9:"page_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:29:"Page type to show (null: all)";s:11:"phpdoc_name";s:9:"page_type";s:3:"set";s:20:"modules comcode html";}}s:4:"name";s:19:"find_all_pages_wrap";s:11:"description";s:182:"Get an array of all the pages everywhere in the zone, limited by the selection algorithm (for small sites everything will be returned, for larger ones it depends on the show method).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A map of page name to type (modules_custom, etc)";}}s:14:"find_all_pages";a:6:{s:8:"filename";s:17:"sources/zones.php";s:10:"parameters";a:6:{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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}i:1;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The page type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:20:"modules comcode html";}i:2;a:7:{s:4:"name";s:3:"ext";s:7:"default";s:3:"php";s:11:"default_raw";s:5:"'php'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:49:"The file extension to limit us to (without a dot)";s:11:"phpdoc_name";s:3:"ext";}i:3;a:7:{s:4:"name";s:11:"keep_ext_on";s:7:"default";s:13:"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 leave file extensions on the page name";s:11:"phpdoc_name";s:11:"keep_ext_on";}i:4;a:7:{s:4:"name";s:11:"cutoff_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:49:"Only show pages newer than (null: no restriction)";s:11:"phpdoc_name";s:11:"cutoff_time";}i:5;a:8:{s:4:"name";s:11:"show_method";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:28:"Selection algorithm constant";s:11:"phpdoc_name";s:11:"show_method";s:3:"set";s:5:"0 1 2";}}s:4:"name";s:14:"find_all_pages";s:11:"description";s:173:"Get an array of all the pages of the specified type (module, etc) and extension (for small sites everything will be returned, for larger ones it depends on the show method).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A map of page name to type (modules_custom, etc)";}}s:16:"find_all_modules";a:6:{s:8:"filename";s:17:"sources/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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:16:"find_all_modules";s:11:"description";s:32:"Get an array of all the modules.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A map of page name to type (modules_custom, etc)";}}s:24:"extract_module_functions";a:6:{s:8:"filename";s:17:"sources/zones.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:53:"The path to the module (or any PHP file with a class)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:9:"functions";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:34:"Array of functions to be executing";s:11:"phpdoc_name";s:9:"functions";}i:2;a:7:{s:4:"name";s:6:"params";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:58:"A list of parameters to pass to our functions (null: none)";s:11:"phpdoc_name";s:6:"params";}i:3;a:7:{s:4:"name";s:23:"prefer_direct_code_call";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:78:"Whether to do this "properly" (via proper OOP), which will consume more memory";s:11:"phpdoc_name";s:23:"prefer_direct_code_call";}i:4;a:7:{s:4:"name";s:10:"class_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:62:"Class name to use (null: autodetect, which is a little slower)";s:11:"phpdoc_name";s:10:"class_name";}}s:4:"name";s:24:"extract_module_functions";s:11:"description";s:187:"Extract code to execute the requested functions with the requested parameters from the module at the given path.We used to actually load up the module, but it ate all our RAM when we did!";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:112:"A list of pieces of code to do the equivalent of executing the requested functions with the requested parameters";}}s:12:"init__zones2";a:5:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"init__zones2";s:11:"description";s:45:"Standard code module initialisation function.";s:5:"flags";a:0:{}}s:23:"render_comcode_page_box";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:5:{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:13:"Row to render";s:11:"phpdoc_name";s:3:"row";}i:1;a:7:{s:4:"name";s:12:"give_context";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:84:"Whether to include context (i.e. say WHAT this is, not just show the actual content)";s:11:"phpdoc_name";s:12:"give_context";}i:2;a:7:{s:4:"name";s:19:"include_breadcrumbs";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to include breadcrumbs (if there are any)";s:11:"phpdoc_name";s:19:"include_breadcrumbs";}i:3;a:7:{s:4:"name";s:4:"root";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:"Virtual root to use (null: none)";s:11:"phpdoc_name";s:4:"root";}i:4;a:7:{s:4:"name";s:4:"guid";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:50:"Overridden GUID to send to templates (blank: none)";s:11:"phpdoc_name";s:4:"guid";}}s:4:"name";s:23:"render_comcode_page_box";s:11:"description";s:26:"Render a Comcode page box.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"Rendered box";}}s:15:"actual_add_zone";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:8:{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:16:"Name of the zone";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:5:"title";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";s:7:"default";s:11:"default_raw";s:9:"'default'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";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:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}i:7;a:7:{s:4:"name";s:8:"base_url";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:29:"The base URL (blank: natural)";s:11:"phpdoc_name";s:8:"base_url";}}s:4:"name";s:15:"actual_add_zone";s:11:"description";s:11:"Add a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:18:"save_zone_base_url";a:5:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:2:{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:8:"The zone";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:8:"base_url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:29:"The base URL (blank: natural)";s:11:"phpdoc_name";s:8:"base_url";}}s:4:"name";s:18:"save_zone_base_url";s:11:"description";s:21:"Save a zone base URL.";s:5:"flags";a:0:{}}s:14:"upgrade_module";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:2:{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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The module name";s:11:"phpdoc_name";s:6:"module";}}s:4:"name";s:14:"upgrade_module";s:11:"description";s:29:"Upgrade the specified module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:41:"0=No upgrade. -2=Not installed, 1=Upgrade";}}s:16:"reinstall_module";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:2:{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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The module name";s:11:"phpdoc_name";s:6:"module";}}s:4:"name";s:16:"reinstall_module";s:11:"description";s:31:"Reinstall the specified module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether a module installer had to be run";}}s:16:"uninstall_module";a:5:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:2:{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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:6:"module";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The module name";s:11:"phpdoc_name";s:6:"module";}}s:4:"name";s:16:"uninstall_module";s:11:"description";s:58:"Completely uninstall the specified module from the system.";s:5:"flags";a:0:{}}s:15:"find_all_blocks";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"find_all_blocks";s:11:"description";s:86:"Get an array of all the blocks that are currently installed (miniblocks not included).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:50:"Map of all blocks (name->[sources/sources_custom])";}}s:18:"cleanup_block_name";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The raw block codename";s:11:"phpdoc_name";s:5:"block";}}s:4:"name";s:18:"cleanup_block_name";s:11:"description";s:31:"Make a block codename look nice";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:41:"A nice human readable version of the name";}}s:20:"get_block_parameters";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The name of the block to get parameters for";s:11:"phpdoc_name";s:5:"block";}i:1;a:7:{s:4:"name";s:27:"include_standard_parameters";s:7:"default";s:13:"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:"Include parameters that apply to all blocks";s:11:"phpdoc_name";s:27:"include_standard_parameters";}}s:4:"name";s:20:"get_block_parameters";s:11:"description";s:27:"Gets parameters for a block";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:36:"A list of parameters the block takes";}}s:13:"upgrade_block";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:32:"The name of the block to upgrade";s:11:"phpdoc_name";s:5:"block";}}s:4:"name";s:13:"upgrade_block";s:11:"description";s:210:"Upgrades a block to the latest version available on your Composr installation. [b]This function can only upgrade to the latest version put into the block directory.[/b] You should not need to use this function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:41:"0=No upgrade. -2=Not installed, 1=Upgrade";}}s:15:"reinstall_block";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"The name of the block to reinstall";s:11:"phpdoc_name";s:5:"block";}}s:4:"name";s:15:"reinstall_block";s:11:"description";s:108:"Reinstall a block if it has become corrupted for any reason.Again, you should not need to use this function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether installation was required";}}s:15:"uninstall_block";a:5:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:34:"The name of the block to uninstall";s:11:"phpdoc_name";s:5:"block";}}s:4:"name";s:15:"uninstall_block";s:11:"description";s:110:"This function totally uninstalls a block from the system. Yet again, you should not need to use this function.";s:5:"flags";a:0:{}}s:29:"extract_module_functions_page";a:6:{s:8:"filename";s:18:"sources/zones2.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:17:"The zone it is in";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:9:"functions";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:34:"Array of functions to be executing";s:11:"phpdoc_name";s:9:"functions";}i:3;a:7:{s:4:"name";s:6:"params";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:58:"A list of parameters to pass to our functions (null: none)";s:11:"phpdoc_name";s:6:"params";}}s:4:"name";s:29:"extract_module_functions_page";s:11:"description";s:149:"Extract code to execute the requested functions with the requested parameters from the module requested.If it's not a module, returns an empty array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:112:"A list of pieces of code to do the equivalent of executing the requested functions with the requested parameters";}}s:19:"extract_module_info";a:6:{s:8:"filename";s:18:"sources/zones2.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:22:"The path to the module";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:19:"extract_module_info";s:11:"description";s:56:"Extract the info function from a module at a given path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:63:"A module information map (null: module contains no info method)";}}s:20:"_find_all_pages_wrap";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:5:{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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}i:1;a:7:{s:4:"name";s:11:"keep_ext_on";s:7:"default";s:13:"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 leave file extensions on the page name";s:11:"phpdoc_name";s:11:"keep_ext_on";}i:2;a:7:{s:4:"name";s:18:"consider_redirects";s:7:"default";s:13:"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 to take transparent redirects into account";s:11:"phpdoc_name";s:18:"consider_redirects";}i:3;a:8:{s:4:"name";s:11:"show_method";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:28:"Selection algorithm constant";s:11:"phpdoc_name";s:11:"show_method";s:3:"set";s:5:"0 1 2";}i:4;a:7:{s:4:"name";s:9:"page_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:29:"Page type to show (null: all)";s:11:"phpdoc_name";s:9:"page_type";}}s:4:"name";s:20:"_find_all_pages_wrap";s:11:"description";s:146:"Get an array of all the pages everywhere in the zone (for small sites everything will be returned, for larger ones it depends on the show method).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A map of page name to type (modules_custom, etc)";}}s:15:"_find_all_pages";a:6:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:7:{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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}i:1;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:45:"The type (including language, if appropriate)";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:74:"modules modules_custom comcode/EN comcode_custom/EN html/EN html_custom/EN";}i:2;a:7:{s:4:"name";s:3:"ext";s:7:"default";s:3:"php";s:11:"default_raw";s:5:"'php'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:49:"The file extension to limit us to (without a dot)";s:11:"phpdoc_name";s:3:"ext";}i:3;a:7:{s:4:"name";s:11:"keep_ext_on";s:7:"default";s:13:"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 leave file extensions on the page name";s:11:"phpdoc_name";s:11:"keep_ext_on";}i:4;a:7:{s:4:"name";s:11:"cutoff_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:49:"Only show pages newer than (null: no restriction)";s:11:"phpdoc_name";s:11:"cutoff_time";}i:5;a:8:{s:4:"name";s:11:"show_method";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:28:"Selection algorithm constant";s:11:"phpdoc_name";s:11:"show_method";s:3:"set";s:5:"0 1 2";}i:6;a:7:{s:4:"name";s:6:"custom";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?boolean";s:11:"description";s:64:"Whether to search under the custom-file-base (null: auto-decide)";s:11:"phpdoc_name";s:6:"custom";}}s:4:"name";s:15:"_find_all_pages";s:11:"description";s:173:"Get an array of all the pages of the specified type (module, etc) and extension (for small sites everything will be returned, for larger ones it depends on the show method).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A map of page name to type (modules_custom, etc)";}}s:17:"_find_all_modules";a:6:{s:8:"filename";s:18:"sources/zones2.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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:17:"_find_all_modules";s:11:"description";s:32:"Get an array of all the modules.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A map of page name to type (modules_custom, etc)";}}s:24:"sync_htaccess_with_zones";a:5:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"sync_htaccess_with_zones";s:11:"description";s:53:"Update the .htaccess file with the latest zone names.";s:5:"flags";a:0:{}}s:15:"check_zone_name";a:5:{s:8:"filename";s:18:"sources/zones2.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:13:"The zone name";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:15:"check_zone_name";s:11:"description";s:64:"Check a zone name doesn't conflict, according to our URL scheme.";s:5:"flags";a:0:{}}s:15:"check_page_name";a:5:{s:8:"filename";s:18:"sources/zones2.php";s:10:"parameters";a:2:{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:13:"The zone name";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";}}s:4:"name";s:15:"check_page_name";s:11:"description";s:64:"Check a page name doesn't conflict, according to our URL scheme.";s:5:"flags";a:0:{}}s:16:"actual_edit_zone";a:6:{s:8:"filename";s:18:"sources/zones3.php";s:10:"parameters";a:10:{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:28:"The current name of the zone";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:5:"title";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:5:{s:4:"name";s:12:"default_page";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:5:{s:4:"name";s:11:"header_text";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:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";s:11:"phpdoc_name";s:5:"theme";}i:5;a:5:{s:4:"name";s:15:"require_session";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:5:{s:4:"name";s:8:"new_zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The new name of the zone";s:11:"phpdoc_name";s:8:"new_zone";}i:7;a:7:{s:4:"name";s:7:"uniqify";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:58:"Whether to force the name as unique, if there's a conflict";s:11:"phpdoc_name";s:7:"uniqify";}i:8;a:7:{s:4:"name";s:8:"skip_afm";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to skip the AFM because we know it's not needed (or can't be loaded)";s:11:"phpdoc_name";s:8:"skip_afm";}i:9;a:7:{s:4:"name";s:8:"base_url";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:29:"The base URL (blank: natural)";s:11:"phpdoc_name";s:8:"base_url";}}s:4:"name";s:16:"actual_edit_zone";s:11:"description";s:12:"Edit a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The name";}}s:23:"actual_rename_zone_lite";a:5:{s:8:"filename";s:18:"sources/zones3.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:24:"The old name of the zone";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:8:"new_zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The new name of the zone";s:11:"phpdoc_name";s:8:"new_zone";}i:2;a:7:{s:4:"name";s:25:"dont_bother_with_main_row";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:97:"Whether to assume the main zone row has already been renamed as part of a wider editing operation";s:11:"phpdoc_name";s:25:"dont_bother_with_main_row";}}s:4:"name";s:23:"actual_rename_zone_lite";s:11:"description";s:30:"Rename a zone in the database.";s:5:"flags";a:0:{}}s:18:"actual_delete_zone";a:5:{s:8:"filename";s:18:"sources/zones3.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:20:"The name of the zone";s:11:"phpdoc_name";s:4:"zone";}i:1;a:7:{s:4:"name";s:5:"force";s:7:"default";s:13:"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:"Force, even if it contains pages";s:11:"phpdoc_name";s:5:"force";}i:2;a:7:{s:4:"name";s:8:"skip_afm";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether to skip the AFM because we know it's not needed (or can't be loaded)";s:11:"phpdoc_name";s:8:"skip_afm";}}s:4:"name";s:18:"actual_delete_zone";s:11:"description";s:14:"Delete a zone.";s:5:"flags";a:0:{}}s:23:"actual_delete_zone_lite";a:5:{s:8:"filename";s:18:"sources/zones3.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:20:"The name of the zone";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:23:"actual_delete_zone_lite";s:11:"description";s:31:"Delete a zone's database stuff.";s:5:"flags";a:0:{}}s:23:"sitemap_do_next_manager";a:6:{s:8:"filename";s:18:"sources/zones3.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:23:"sitemap_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:27:"create_selection_list_zones";a:6:{s:8:"filename";s:18:"sources/zones3.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:3:"sel";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 zone in the list to select by default (null: use first)";s:11:"phpdoc_name";s:3:"sel";}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:6:"?array";s:11:"description";s:60:"A list of zone to not put into the list (null: none to skip)";s:11:"phpdoc_name";s:5:"no_go";}i:2;a:7:{s:4:"name";s:7:"reorder";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:"A reordering (null: no reordering)";s:11:"phpdoc_name";s:7:"reorder";}i:3;a:7:{s:4:"name";s:13:"updated_since";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:57:"Time from which content must be updated (null: no limit).";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:27:"create_selection_list_zones";s:11:"description";s:20:"Get a list of zones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:16:"get_zone_chooser";a:6:{s:8:"filename";s:18:"sources/zones3.php";s:10:"parameters";a:3:{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:108:"Whether the zone chooser will be shown inline to something else (as opposed to providing its own borderings)";s:11:"phpdoc_name";s:6:"inline";}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:6:"?array";s:11:"description";s:60:"A list of zone to not put into the list (null: none to skip)";s:11:"phpdoc_name";s:5:"no_go";}i:2;a:7:{s:4:"name";s:7:"reorder";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:"A reordering (null: no reordering)";s:11:"phpdoc_name";s:7:"reorder";}}s:4:"name";s:16:"get_zone_chooser";s:11:"description";s:29:"Get a zone chooser interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The zone chooser";}}s:18:"get_templates_list";a:6:{s:8:"filename";s:18:"sources/zones3.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_templates_list";s:11:"description";s:55:"Get the map of names/titles of the available templates.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:124:"The names and titles of all available templates (title refers to the text within the first [title] tag in the template file)";}}s:21:"get_template_contents";a:6:{s:8:"filename";s:18:"sources/zones3.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:48:"The name of the template (based on the filename)";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:21:"get_template_contents";s:11:"description";s:37:"Read the contents of a template file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:53:"The contents of the file (blank if it does not exist)";}}s:17:"save_comcode_page";a:6:{s:8:"filename";s:18:"sources/zones3.php";s:10:"parameters";a:14:{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:8:"The zone";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:8:"new_file";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The page";s:11:"phpdoc_name";s:8:"new_file";}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:12:"The language";s:11:"phpdoc_name";s:4:"lang";}i:3;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The page text";s:11:"phpdoc_name";s:4:"text";}i:4;a:5:{s:4:"name";s:9:"validated";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:20:"The validated status";s:11:"phpdoc_name";s:9:"validated";}i:5;a:7:{s:4:"name";s:11:"parent_page";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:28:"The page parent (null: none)";s:11:"phpdoc_name";s:11:"parent_page";}i:6;a:7:{s:4:"name";s:5:"order";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:14:"The page order";s:11:"phpdoc_name";s:5:"order";}i:7;a:7:{s:4:"name";s:8:"add_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:20:"Add time (null: now)";s:11:"phpdoc_name";s:8:"add_time";}i:8;a:7:{s:4:"name";s:9:"edit_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:"Edit time (null: not edited)";s:11:"phpdoc_name";s:9:"edit_time";}i:9;a:7:{s:4:"name";s:12:"show_as_edit";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 to show as edited";s:11:"phpdoc_name";s:12:"show_as_edit";}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:36:"The submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:11;a:7:{s:4:"name";s:4:"file";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:43:"The old page name (null: not being renamed)";s:11:"phpdoc_name";s:4:"file";}i:12;a:7:{s:4:"name";s:13:"meta_keywords";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:"Meta keywords for this resource (blank: implicit)";s:11:"phpdoc_name";s:13:"meta_keywords";}i:13;a:7:{s:4:"name";s:16:"meta_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:52:"Meta description for this resource (blank: implicit)";s:11:"phpdoc_name";s:16:"meta_description";}}s:4:"name";s:17:"save_comcode_page";s:11:"description";s:20:"Save a Comcode page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:13:"The save path";}}s:15:"delete_cms_page";a:5:{s:8:"filename";s:18:"sources/zones3.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:8:"The zone";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:8:"The page";s:11:"phpdoc_name";s:4:"page";}i:2;a:8:{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:133:"The page type (null: Comcode page in Composr's fallback language) [NB: page is deleted in all languages regardless of which is given]";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:93:"modules modules_custom minimodules minimodules_custom comcode comcode_custom html html_custom";}i:3;a:7:{s:4:"name";s:7:"use_afm";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether to use the AFM";s:11:"phpdoc_name";s:7:"use_afm";}}s:4:"name";s:15:"delete_cms_page";s:11:"description";s:22:"Delete a Composr page.";s:5:"flags";a:0:{}}s:31:"uninstall_check_master_password";a:6:{s:8:"filename";s:13:"uninstall.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"password_given";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:34:"Given master password (null: none)";s:11:"phpdoc_name";s:14:"password_given";}}s:4:"name";s:31:"uninstall_check_master_password";s:11:"description";s:41:"Check the given master password is valid.";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:3:"abs";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"number";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:40:"The number to get the absolute value of.";s:11:"phpdoc_name";s:6:"number";}}s:4:"name";s:3:"abs";s:11:"description";s:15:"Absolute value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:29:"The absolute value of number.";}}s:18:"array_count_values";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Input array.";s:11:"phpdoc_name";s:5:"input";}}s:4:"name";s:18:"array_count_values";s:11:"description";s:34:"Counts all the values of an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"An array using the values of the input array as keys and their frequency in input as values.";}}s:10:"array_diff";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"array1";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"First array.";s:11:"phpdoc_name";s:6:"array1";}i:1;a:5:{s:4:"name";s:6:"array2";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Second array.";s:11:"phpdoc_name";s:6:"array2";}i:2;a:7:{s:4:"name";s:6:"array3";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:"Third array (null: only 2).";s:11:"phpdoc_name";s:6:"array3";}}s:4:"name";s:10:"array_diff";s:11:"description";s:40:"Calculate the difference between arrays.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The difference.";}}s:16:"array_diff_assoc";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"array1";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"First array.";s:11:"phpdoc_name";s:6:"array1";}i:1;a:5:{s:4:"name";s:6:"array2";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Second array.";s:11:"phpdoc_name";s:6:"array2";}i:2;a:7:{s:4:"name";s:6:"array3";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:"Third array (null: only 2).";s:11:"phpdoc_name";s:6:"array3";}}s:4:"name";s:16:"array_diff_assoc";s:11:"description";s:64:"Computes the intersection of arrays with additional index check.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The difference.";}}s:10:"array_flip";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"trans";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Array to flip.";s:11:"phpdoc_name";s:5:"trans";}}s:4:"name";s:10:"array_flip";s:11:"description";s:60:"Exchanges all keys with their associated values in an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"An array in flip order.";}}s:16:"array_key_exists";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:5:"mixed";s:11:"description";s:4:"Key.";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:6:"search";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Search array.";s:11:"phpdoc_name";s:6:"search";}}s:4:"name";s:16:"array_key_exists";s:11:"description";s:53:"Checks if the given key or index exists in the array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:43:"Whether the key is set in the search array.";}}s:10:"array_keys";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Input array.";s:11:"phpdoc_name";s:5:"input";}i:1;a:7:{s:4:"name";s:12:"search_value";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:54:"Only find keys with this value (null: no such filter).";s:11:"phpdoc_name";s:12:"search_value";}}s:4:"name";s:10:"array_keys";s:11:"description";s:32:"Return all the keys of an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The keys of the array.";}}s:15:"array_intersect";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"array1";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"First array.";s:11:"phpdoc_name";s:6:"array1";}i:1;a:5:{s:4:"name";s:6:"array2";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Second array.";s:11:"phpdoc_name";s:6:"array2";}i:2;a:7:{s:4:"name";s:6:"array3";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:"Third array (null: only 2).";s:11:"phpdoc_name";s:6:"array3";}}s:4:"name";s:15:"array_intersect";s:11:"description";s:42:"Calculate the intersection between arrays.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The intersection.";}}s:19:"array_intersect_key";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"array1";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"First array.";s:11:"phpdoc_name";s:6:"array1";}i:1;a:5:{s:4:"name";s:6:"array2";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Second array.";s:11:"phpdoc_name";s:6:"array2";}i:2;a:7:{s:4:"name";s:6:"array3";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:"Third array (null: only 2).";s:11:"phpdoc_name";s:6:"array3";}}s:4:"name";s:19:"array_intersect_key";s:11:"description";s:62:"Computes the intersection of arrays using keys for comparison.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The intersection.";}}s:21:"array_intersect_assoc";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"array1";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"First array.";s:11:"phpdoc_name";s:6:"array1";}i:1;a:5:{s:4:"name";s:6:"array2";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Second array.";s:11:"phpdoc_name";s:6:"array2";}i:2;a:7:{s:4:"name";s:6:"array3";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:"Third array (null: only 2).";s:11:"phpdoc_name";s:6:"array3";}}s:4:"name";s:21:"array_intersect_assoc";s:11:"description";s:65:"Calculate the intersection of arrays with additional index check.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The intersection.";}}s:11:"array_merge";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:6:"array1";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"First array.";s:11:"phpdoc_name";s:6:"array1";}i:1;a:5:{s:4:"name";s:6:"array2";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Second array.";s:11:"phpdoc_name";s:6:"array2";}i:2;a:7:{s:4:"name";s:6:"array3";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:"Third array (null: only 2).";s:11:"phpdoc_name";s:6:"array3";}i:3;a:7:{s:4:"name";s:6:"array4";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:"Fourth array to merge (null: not this one).";s:11:"phpdoc_name";s:6:"array4";}i:4;a:7:{s:4:"name";s:6:"array5";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:"Fifth array to merge (null: not this one).";s:11:"phpdoc_name";s:6:"array5";}}s:4:"name";s:11:"array_merge";s:11:"description";s:25:"Merge two or more arrays.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"Merged array.";}}s:9:"array_pop";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:10:"The array.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:9:"array_pop";s:11:"description";s:37:"Pop the element off the end of array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:27:"The value (null: no value).";}}s:10:"array_push";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:10:"The array.";s:11:"phpdoc_name";s:5:"array";}i:1;a:5:{s:4:"name";s:4:"var1";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:18:"Element to append.";s:11:"phpdoc_name";s:4:"var1";}i:2;a:7:{s:4:"name";s:4:"var2";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:67:"Element to append (null: no more - actually pass nothing for this).";s:11:"phpdoc_name";s:4:"var2";}i:3;a:7:{s:4:"name";s:4:"var3";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:67:"Element to append (null: no more - actually pass nothing for this).";s:11:"phpdoc_name";s:4:"var3";}i:4;a:7:{s:4:"name";s:4:"var4";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:67:"Element to append (null: no more - actually pass nothing for this).";s:11:"phpdoc_name";s:4:"var4";}}s:4:"name";s:10:"array_push";s:11:"description";s:48:"Push one or more elements onto the end of array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:40:"The new number of elements in the array.";}}s:13:"array_reverse";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:21:"The array to reverse.";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:13:"preserve_keys";s:7:"default";s:13:"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 preserve keys.";s:11:"phpdoc_name";s:13:"preserve_keys";}}s:4:"name";s:13:"array_reverse";s:11:"description";s:47:"Return an array with elements in reverse order.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The reversed array.";}}s:12:"array_search";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"needle";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:7:"Needle.";s:11:"phpdoc_name";s:6:"needle";}i:1;a:5:{s:4:"name";s:8:"haystack";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Haystack.";s:11:"phpdoc_name";s:8:"haystack";}}s:4:"name";s:12:"array_search";s:11:"description";s:85:"Searches the array for a given value and returns the corresponding key if successful.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~mixed";s:11:"description";s:27:"The key (false: not found).";}}s:11:"array_shift";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:10:"The array.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:11:"array_shift";s:11:"description";s:44:"Shift an element off the beginning of array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:42:"Shifted element (null: empty array given).";}}s:11:"array_slice";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:10:"The array.";s:11:"phpdoc_name";s:5:"array";}i:1;a:5:{s:4:"name";s:6:"offset";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The offset.";s:11:"phpdoc_name";s:6:"offset";}i:2;a:7:{s:4:"name";s:6:"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:46:"The length (null: up to the end of the array).";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:11:"array_slice";s:11:"description";s:29:"Extract a slice of the array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"The slice.";}}s:12:"array_splice";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"input";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:10:"The array.";s:11:"phpdoc_name";s:5:"input";}i:1;a:5:{s:4:"name";s:6:"offset";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The offset.";s:11:"phpdoc_name";s:6:"offset";}i:2;a:7:{s:4:"name";s:6:"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:46:"The length (null: up to the end of the array).";s:11:"phpdoc_name";s:6:"length";}i:3;a:7:{s:4:"name";s:11:"replacement";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:59:"The replacement (null: nothing put in, just bit taken out).";s:11:"phpdoc_name";s:11:"replacement";}}s:4:"name";s:12:"array_splice";s:11:"description";s:65:"Remove a portion of the array and replace it with something else.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The spliced result.";}}s:12:"array_unique";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:12:"Input array.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:12:"array_unique";s:11:"description";s:84:"Removes duplicate values from an array. Equivalence determined by string comparison.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"Output array.";}}s:12:"array_values";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:12:"Input array.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:12:"array_values";s:11:"description";s:34:"Return all the values of an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"Output array.";}}s:6:"arsort";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:6:"Array.";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:10:"sort_flags";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:11:"Sort flags.";s:11:"phpdoc_name";s:10:"sort_flags";}}s:4:"name";s:6:"arsort";s:11:"description";s:62:"Sort an array in reverse order and maintain index association.";s:5:"flags";a:0:{}}s:5:"asort";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:6:"Array.";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:10:"sort_flags";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:11:"Sort flags.";s:11:"phpdoc_name";s:10:"sort_flags";}}s:4:"name";s:5:"asort";s:11:"description";s:45:"Sort an array and maintain index association.";s:5:"flags";a:0:{}}s:13:"base64_decode";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"encoded_data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Encoded data.";s:11:"phpdoc_name";s:12:"encoded_data";}}s:4:"name";s:13:"base64_decode";s:11:"description";s:38:"Decodes data encoded with MIME base64.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:28:"Decoded data (false: error).";}}s:13:"base64_encode";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:5:"Data.";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:13:"base64_encode";s:11:"description";s:30:"Encodes data with MIME base64.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"Encoded data.";}}s:14:"call_user_func";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:18:"Function callback.";s:11:"phpdoc_name";s:8:"function";}i:1;a:7:{s:4:"name";s:7:"param_a";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:32:"Optional parameter (null: none).";s:11:"phpdoc_name";s:7:"param_a";}i:2;a:7:{s:4:"name";s:7:"param_b";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:32:"Optional parameter (null: none).";s:11:"phpdoc_name";s:7:"param_b";}i:3;a:7:{s:4:"name";s:7:"param_c";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:32:"Optional parameter (null: none).";s:11:"phpdoc_name";s:7:"param_c";}i:4;a:7:{s:4:"name";s:7:"param_d";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:32:"Optional parameter (null: none).";s:11:"phpdoc_name";s:7:"param_d";}}s:4:"name";s:14:"call_user_func";s:11:"description";s:50:"Call a user function given by the first parameter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:30:"Whatever the function returns.";}}s:4:"ceil";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"function";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:18:"Value to round up.";s:11:"phpdoc_name";s:8:"function";}}s:4:"name";s:4:"ceil";s:11:"description";s:19:"Round fractions up.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Rounded value.";}}s:5:"chdir";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:4:"PATH";s:11:"description";s:18:"Path to change to.";s:11:"phpdoc_name";s:9:"directory";}}s:4:"name";s:5:"chdir";s:11:"description";s:17:"Change directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:9:"checkdate";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"month";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"The month.";s:11:"phpdoc_name";s:5:"month";}i:1;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"The day.";s:11:"phpdoc_name";s:3:"day";}i:2;a:5:{s:4:"name";s:4:"year";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The year.";s:11:"phpdoc_name";s:4:"year";}}s:4:"name";s:9:"checkdate";s:11:"description";s:26:"Validate a gregorian date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether the date is valid.";}}s:5:"chmod";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{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:31:"The file to change the mode of.";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"mode";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The mode (e.g. 0777).";s:11:"phpdoc_name";s:4:"mode";}}s:4:"name";s:5:"chmod";s:11:"description";s:18:"Changes file mode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:3:"chr";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"ascii";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:42:"The ASCII code for the character required.";s:11:"phpdoc_name";s:5:"ascii";}}s:4:"name";s:3:"chr";s:11:"description";s:28:"Return a specific character.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:64:"A string of length 1, where the first character is as requested.";}}s:11:"chunk_split";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"body";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The input string.";s:11:"phpdoc_name";s:4:"body";}i:1;a:7:{s:4:"name";s:8:"chunklen";s:7:"default";i:76;s:11:"default_raw";s:2:"76";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The maximum chunking length.";s:11:"phpdoc_name";s:8:"chunklen";}i:2;a:7:{s:4:"name";s:8:"splitter";s:7:"default";s:2:"
";s:11:"default_raw";s:6:""\r\n"";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Split character.";s:11:"phpdoc_name";s:8:"splitter";}}s:4:"name";s:11:"chunk_split";s:11:"description";s:234:"Split a string into smaller chunks. Can be used to split a string into smaller chunks which is useful for e.g. converting base64_encode output to match RFC 2045 semantics. It inserts end (defaults to "\r\n") every chunklen characters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:40:"The chunked version of the input string.";}}s:12:"class_exists";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"class_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The class identifier.";s:11:"phpdoc_name";s:10:"class_name";}}s:4:"name";s:12:"class_exists";s:11:"description";s:37:"Checks if the class has been defined.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the class has been defined.";}}s:14:"clearstatcache";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"clearstatcache";s:11:"description";s:25:"Clears file status cache.";s:5:"flags";a:0:{}}s:8:"closedir";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:30:"The directory handle to close.";s:11:"phpdoc_name";s:6:"handle";}}s:4:"name";s:8:"closedir";s:11:"description";s:23:"Close directory handle.";s:5:"flags";a:0:{}}s:8:"constant";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:25:"The name of the constant.";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"constant";s:11:"description";s:32:"Returns the value of a constant.";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 constant.";}}s:4:"copy";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:16:"The source path.";s:11:"phpdoc_name";s:6:"source";}i:1;a:5:{s:4:"name";s:4:"dest";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:21:"The destination path.";s:11:"phpdoc_name";s:4:"dest";}i:2;a:7:{s:4:"name";s:7:"context";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:57:"A stream context to attach to (null: no special context).";s:11:"phpdoc_name";s:7:"context";}}s:4:"name";s:4:"copy";s:11:"description";s:18:"{{creates-file}}}}";s:5:"flags";a:1:{i:0;s:12:"creates-file";}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:3:"cos";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"angle";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:21:"The angle in radians.";s:11:"phpdoc_name";s:5:"angle";}}s:4:"name";s:3:"cos";s:11:"description";s:33:"Calculate the cosine of an angle.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:11:"The cosine.";}}s:5:"count";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"Variable to count elements of.";s:11:"phpdoc_name";s:3:"var";}i:1;a:7:{s:4:"name";s:4:"mode";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:49:"The count mode (COUNT_NORMAL or COUNT_RECURSIVE).";s:11:"phpdoc_name";s:4:"mode";}}s:4:"name";s:5:"count";s:11:"description";s:29:"Count elements in a variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:10:"The count.";}}s:5:"crypt";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{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 string to hash.";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:4:"salt";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:40:"The salt (null: generate a random salt).";s:11:"phpdoc_name";s:4:"salt";}}s:4:"name";s:5:"crypt";s:11:"description";s:59:"One-way string hashing (not encryption, as not reversible).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:71:"The hash. The start of the hash determines parameters (encoding, salt).";}}s:7:"current";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:10:"The array.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:7:"current";s:11:"description";s:39:"Return the current element in an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:20:"The current element.";}}s:4:"date";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"format";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The format string.";s:11:"phpdoc_name";s:6:"format";}i:1;a:7:{s:4:"name";s:9:"timestamp";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:35:"The timestamp (null: current time).";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:4:"date";s:11:"description";s:25:"Format a local time/date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:49:"The string representation of the local time/date.";}}s:6:"dechex";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"number";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:62:"The integer ('decimal' form, although truly stored in binary).";s:11:"phpdoc_name";s:6:"number";}}s:4:"name";s:6:"dechex";s:11:"description";s:48:"Integer to string representation of hexadecimal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"The string representation.";}}s:6:"decoct";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"number";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:62:"The integer ('decimal' form, although truly stored in binary).";s:11:"phpdoc_name";s:6:"number";}}s:4:"name";s:6:"decoct";s:11:"description";s:42:"Integer to string representation of octal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"The string representation.";}}s:6:"define";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:11:"Identifier.";s:11:"phpdoc_name";s:4:"name";}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:6:"Value.";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:6:"define";s:11:"description";s:25:"Defines a named constant.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:7:"defined";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:29:"The identifier of a constant.";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:7:"defined";s:11:"description";s:45:"Checks whether a given named constant exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the constant exists.";}}s:7:"dirname";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:4:"PATH";s:11:"description";s:9:"The path.";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:7:"dirname";s:11:"description";s:41:"Returns directory name component of path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:29:"The directory name component.";}}s:7:"deg2rad";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"number";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:17:"Angle in degrees.";s:11:"phpdoc_name";s:6:"number";}}s:4:"name";s:7:"deg2rad";s:11:"description";s:56:"Converts the number in degrees to the radian equivalent.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:17:"Angle in radians.";}}s:15:"error_reporting";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"level";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:227:"OR'd combination of error type constants. (E_ERROR, E_WARNING, E_PARSE, E_NOTICE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING, E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE, E_ALL) (null: find current level).";s:11:"phpdoc_name";s:5:"level";}}s:4:"name";s:15:"error_reporting";s:11:"description";s:35:"Sets which PHP errors are reported.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:30:"Current error reporting level.";}}s:4:"exit";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"message";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:47:"The message (string), or status code (integer).";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:4:"exit";s:11:"description";s:50:"Output a message and terminate the current script.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"Never returns (i.e. exits)";}}s:7:"explode";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:9:"separator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The separator.";s:11:"phpdoc_name";s:9:"separator";}i:1;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The string to split.";s:11:"phpdoc_name";s:6:"string";}i:2;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:90:"The maximum number of splits (the last element containing the remainder) (null: no limit).";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:7:"explode";s:11:"description";s:25:"Split a string by string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The split list.";}}s:6:"fclose";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The file pointer.";s:11:"phpdoc_name";s:6:"handle";}}s:4:"name";s:6:"fclose";s:11:"description";s:28:"Closes an open file pointer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:4:"feof";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The file pointer.";s:11:"phpdoc_name";s:6:"handle";}}s:4:"name";s:4:"feof";s:11:"description";s:40:"Tests for end-of-file on a file pointer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether the end of the file has been reached.";}}s:5:"fgets";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The file pointer.";s:11:"phpdoc_name";s:6:"handle";}i:1;a:7:{s:4:"name";s:6:"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:48:"The maximum length of the line (null: no limit).";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:5:"fgets";s:11:"description";s:28:"Gets line from file pointer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The string read.";}}s:4:"file";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{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:14:"The file name.";s:11:"phpdoc_name";s:8:"filename";}i:1;a:7:{s:4:"name";s:5:"flags";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:6:"Flags.";s:11:"phpdoc_name";s:5:"flags";}}s:4:"name";s:4:"file";s:11:"description";s:32:"Reads entire file into an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:94:"The array (each line being an entry in the array, and newlines still attached) (false: error).";}}s:11:"file_exists";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:9:"The path.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:11:"file_exists";s:11:"description";s:42:"Checks whether a file or directory exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether it exists.";}}s:9:"filectime";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:13:"The filename.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:9:"filectime";s:11:"description";s:31:"Gets inode change time of file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"~TIME";s:11:"description";s:63:"Timestamp of creation (negativity is blasphemy) (false: error).";}}s:9:"filegroup";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:13:"The filename.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:9:"filegroup";s:11:"description";s:16:"Gets file group.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:34:"The posix group ID (false: error).";}}s:9:"filemtime";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:13:"The filename.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:9:"filemtime";s:11:"description";s:28:"Gets file modification time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"~TIME";s:11:"description";s:41:"Timestamp of modification (false: error).";}}s:9:"fileowner";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:13:"The filename.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:9:"fileowner";s:11:"description";s:16:"Gets file owner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:33:"The posix user ID (false: error).";}}s:9:"fileperms";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:13:"The filename.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:9:"fileperms";s:11:"description";s:22:"Gets file permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:43:"The permissions (e.g. 0777) (false: error).";}}s:8:"filesize";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:13:"The filename.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:8:"filesize";s:11:"description";s:15:"Gets file size.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:29:"The file size (false: error).";}}s:8:"floatval";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:10:"The input.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:8:"floatval";s:11:"description";s:30:"Get float value of a variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:16:"The float value.";}}s:5:"floor";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:10:"The input.";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:5:"floor";s:11:"description";s:21:"Round fractions down.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:18:"The rounded value.";}}s:16:"get_defined_vars";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_defined_vars";s:11:"description";s:38:"Get an array of all defined variables.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"All defined variables.";}}s:20:"get_declared_classes";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_declared_classes";s:11:"description";s:37:"Get an array of all declared classes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"All declared classes.";}}s:21:"get_defined_functions";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"get_defined_functions";s:11:"description";s:38:"Get an array of all defined functions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"All defined functions.";}}s:5:"fopen";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:4:"PATH";s:11:"description";s:9:"Filename.";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"mode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Mode (e.g. at).";s:11:"phpdoc_name";s:4:"mode";}i:2;a:7:{s:4:"name";s:16:"use_include_path";s:7:"default";s:13:"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 search within the include path.";s:11:"phpdoc_name";s:16:"use_include_path";}i:3;a:7:{s:4:"name";s:7:"context";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:57:"A stream context to attach to (null: no special context).";s:11:"phpdoc_name";s:7:"context";}}s:4:"name";s:5:"fopen";s:11:"description";s:18:"{{creates-file}}}}";s:5:"flags";a:1:{i:0;s:12:"creates-file";}s:6:"return";a:2:{s:4:"type";s:9:"~resource";s:11:"description";s:45:"The file handle (false: could not be opened).";}}s:9:"fpassthru";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:16:"The file handle.";s:11:"phpdoc_name";s:6:"handle";}}s:4:"name";s:9:"fpassthru";s:11:"description";s:44:"Output all remaining data on a file pointer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:54:"The number of characters that got read (false: error).";}}s:5:"fread";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:16:"The file handle.";s:11:"phpdoc_name";s:6:"handle";}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:23:"Maximum length to read.";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:5:"fread";s:11:"description";s:22:"Binary-safe file read.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"The read data.";}}s:5:"fseek";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:16:"The file handle.";s:11:"phpdoc_name";s:6:"handle";}i:1;a:5:{s:4:"name";s:6:"offset";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:39:"The offset (meaning depends on whence).";s:11:"phpdoc_name";s:6:"offset";}i:2;a:7:{s:4:"name";s:6:"whence";s:7:"default";i:0;s:11:"default_raw";s:8:"SEEK_SET";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"SEEK_SET, SEEK_CUR or SEEK_END.";s:11:"phpdoc_name";s:6:"whence";}}s:4:"name";s:5:"fseek";s:11:"description";s:24:"Seeks on a file pointer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:32:"Success status (-1 means error).";}}s:5:"ftell";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:16:"The file handle.";s:11:"phpdoc_name";s:6:"handle";}}s:4:"name";s:5:"ftell";s:11:"description";s:38:"Gets file pointer read/write position.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:26:"The offset (false: error).";}}s:15:"function_exists";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"function_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The name of the function.";s:11:"phpdoc_name";s:13:"function_name";}}s:4:"name";s:15:"function_exists";s:11:"description";s:70:"Find whether the function of the given function name has been defined.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:22:"Whether it is defined.";}}s:6:"fwrite";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:16:"The file handle.";s:11:"phpdoc_name";s:6:"handle";}i:1;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The string to write to the file.";s:11:"phpdoc_name";s:6:"string";}i:2;a:7:{s:4:"name";s:6:"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:51:"The length of data to write (null: all of $string).";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:6:"fwrite";s:11:"description";s:23:"Binary-safe file write.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:43:"The number of bytes written (false: error).";}}s:7:"gd_info";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"gd_info";s:11:"description";s:62:"Retrieve information about the currently installed GD library.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:21:"Array of information.";}}s:9:"get_class";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"obj";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:11:"The object.";s:11:"phpdoc_name";s:3:"obj";}}s:4:"name";s:9:"get_class";s:11:"description";s:43:"Returns the name of the class of an object.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The class name.";}}s:17:"get_class_methods";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"class_name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:37:"The class name or an object instance.";s:11:"phpdoc_name";s:10:"class_name";}}s:4:"name";s:17:"get_class_methods";s:11:"description";s:30:"Gets the class methods' names.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"An array of method names defined (null: error).";}}s:14:"get_class_vars";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"class_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The class name.";s:11:"phpdoc_name";s:10:"class_name";}}s:4:"name";s:14:"get_class_vars";s:11:"description";s:40:"Get the default properties of the class.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:116:"An associative array of declared properties visible from the current scope, with their default value (false: error).";}}s:15:"get_object_vars";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"object";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:19:"An object instance.";s:11:"phpdoc_name";s:6:"object";}}s:4:"name";s:15:"get_object_vars";s:11:"description";s:40:"Gets the properties of the given object.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"An associative array of defined object accessible non-static properties.";}}s:26:"get_html_translation_table";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:57:"The table to select (HTML_ENTITIES or HTML_SPECIALCHARS).";s:11:"phpdoc_name";s:5:"table";}i:1;a:7:{s:4:"name";s:11:"quote_style";s:7:"default";i:2;s:11:"default_raw";s:10:"ENT_COMPAT";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:59:"The quote style (ENT_QUOTES or ENT_NOQUOTES or ENT_COMPAT).";s:11:"phpdoc_name";s:11:"quote_style";}i:2;a:7:{s:4:"name";s:7:"charset";s:7:"default";s:5:"utf-8";s:11:"default_raw";s:7:"'utf-8'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The character set to use";s:11:"phpdoc_name";s:7:"charset";}}s:4:"name";s:26:"get_html_translation_table";s:11:"description";s:72:"Returns the translation table used by htmlspecialchars and htmlentities.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The translation table.";}}s:20:"get_magic_quotes_gpc";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_magic_quotes_gpc";s:11:"description";s:143:"Gets the current active configuration setting of magic quotes gpc (Note: it actually returns a BINARY, but lets make it cleaner, it won't hurt)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether magic quotes gpc is on.";}}s:6:"getcwd";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"getcwd";s:11:"description";s:35:"Gets the current working directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:8:"The cwd.";}}s:7:"getdate";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"timestamp";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:45:"Timestamp to get information for (null: now).";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:7:"getdate";s:11:"description";s:26:"Get date/time information.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"The information.";}}s:6:"getenv";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:40:"The environment name to get (e.g. PATH).";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:6:"getenv";s:11:"description";s:42:"Gets the value of an environment variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:25:"The value (false: error).";}}s:6:"gmdate";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"format";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The 'gm' format string.";s:11:"phpdoc_name";s:6:"format";}i:1;a:7:{s:4:"name";s:9:"timestamp";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:29:"Timestamp to use (null: now).";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:6:"gmdate";s:11:"description";s:70:"Format a GMT/UTC date/time (uses different format to 'date' function).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The formatted string.";}}s:7:"gzclose";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:11:"The handle.";s:11:"phpdoc_name";s:6:"handle";}}s:4:"name";s:7:"gzclose";s:11:"description";s:30:"Close an open gz-file pointer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:6:"gzopen";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{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:13:"The filename.";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:4:"mode";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The mode (e.g. b).";s:11:"phpdoc_name";s:4:"mode";}}s:4:"name";s:6:"gzopen";s:11:"description";s:18:"{{creates-file}}}}";s:5:"flags";a:1:{i:0;s:12:"creates-file";}s:6:"return";a:2:{s:4:"type";s:9:"~resource";s:11:"description";s:26:"The handle (false: error).";}}s:7:"gzwrite";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:16:"The file handle.";s:11:"phpdoc_name";s:6:"handle";}i:1;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The string to write to the file.";s:11:"phpdoc_name";s:6:"string";}i:2;a:7:{s:4:"name";s:6:"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:64:"The length of data to write (null: full length of input string).";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:7:"gzwrite";s:11:"description";s:26:"Binary-safe gz-file write.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:43:"The number of bytes written (false: error).";}}s:6:"header";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{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 header to send.";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:12:"replace_last";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:144:"Whether to replace a previous call to set the same header (if you choose to not replace, it will send two different values for the same header).";s:11:"phpdoc_name";s:12:"replace_last";}}s:4:"name";s:6:"header";s:11:"description";s:23:"Send a raw HTTP header.";s:5:"flags";a:0:{}}s:12:"headers_sent";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"headers_sent";s:11:"description";s:42:"Checks if or where headers have been sent.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:11:"The answer.";}}s:6:"hexdec";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"hex_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The string representation.";s:11:"phpdoc_name";s:10:"hex_string";}}s:4:"name";s:6:"hexdec";s:11:"description";s:48:"String representation of hexadecimal to decimal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:62:"The integer ('decimal' form, although truly stored in binary).";}}s:12:"htmlentities";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:21:"The string to encode.";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:11:"quote_style";s:7:"default";i:2;s:11:"default_raw";s:10:"ENT_COMPAT";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:55:"The quote style (ENT_COMPAT, ENT_QUOTES, ENT_NOQUOTES).";s:11:"phpdoc_name";s:11:"quote_style";}i:2;a:7:{s:4:"name";s:7:"charset";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 character set to use.";s:11:"phpdoc_name";s:7:"charset";}}s:4:"name";s:12:"htmlentities";s:11:"description";s:51:"Convert all applicable characters to HTML entities.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded string.";}}s:16:"htmlspecialchars";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:21:"The string to encode.";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:11:"quote_style";s:7:"default";i:2;s:11:"default_raw";s:10:"ENT_COMPAT";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:55:"The quote style (ENT_COMPAT, ENT_QUOTES, ENT_NOQUOTES).";s:11:"phpdoc_name";s:11:"quote_style";}i:2;a:7:{s:4:"name";s:7:"charset";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 character set to use.";s:11:"phpdoc_name";s:7:"charset";}}s:4:"name";s:16:"htmlspecialchars";s:11:"description";s:60:"Convert all basic HTML encoding characters to HTML entities.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded string.";}}s:18:"imagealphablending";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:9:"blendmode";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:23:"Whether to alpha blend.";s:11:"phpdoc_name";s:9:"blendmode";}}s:4:"name";s:18:"imagealphablending";s:11:"description";s:35:"Set the blending mode for an image.";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:"imagecolorallocate";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"Red component (0-255).";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Green component (0-255).";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Blue component (0-255).";s:11:"phpdoc_name";s:4:"blue";}}s:4:"name";s:18:"imagecolorallocate";s:11:"description";s:30:"Allocate a color for an image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:55:"Combined colour identifier (false: could not allocate).";}}s:23:"imagecolorallocatealpha";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"Red component (0-255).";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Green component (0-255).";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Blue component (0-255).";s:11:"phpdoc_name";s:4:"blue";}i:4;a:5:{s:4:"name";s:5:"alpha";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Alpha component (0-127).";s:11:"phpdoc_name";s:5:"alpha";}}s:4:"name";s:23:"imagecolorallocatealpha";s:11:"description";s:55:"Allocate a color for an image, with an alpha-component.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:27:"Combined colour identifier.";}}s:21:"imagecolortransparent";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:7:{s:4:"name";s:5:"color";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:60:"Transparency colour identifier (null: get it, don't set it).";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:21:"imagecolortransparent";s:11:"description";s:30:"Define a color as transparent.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:31:"Transparency colour identifier.";}}s:9:"imagecopy";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:6:"dst_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:25:"Destination image handle.";s:11:"phpdoc_name";s:6:"dst_im";}i:1;a:5:{s:4:"name";s:6:"src_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"Source image handle.";s:11:"phpdoc_name";s:6:"src_im";}i:2;a:5:{s:4:"name";s:5:"dst_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination X-ordinate.";s:11:"phpdoc_name";s:5:"dst_x";}i:3;a:5:{s:4:"name";s:5:"dst_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination Y-ordinate.";s:11:"phpdoc_name";s:5:"dst_y";}i:4;a:5:{s:4:"name";s:5:"src_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source X-ordinate.";s:11:"phpdoc_name";s:5:"src_x";}i:5;a:5:{s:4:"name";s:5:"src_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source Y-ordinate.";s:11:"phpdoc_name";s:5:"src_y";}i:6;a:5:{s:4:"name";s:5:"src_w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Width to copy.";s:11:"phpdoc_name";s:5:"src_w";}i:7;a:5:{s:4:"name";s:5:"src_h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Height to copy.";s:11:"phpdoc_name";s:5:"src_h";}}s:4:"name";s:9:"imagecopy";s:11:"description";s:22:"Copy part of an image.";s:5:"flags";a:0:{}}s:18:"imagecopyresampled";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:6:"dst_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:25:"Destination image handle.";s:11:"phpdoc_name";s:6:"dst_im";}i:1;a:5:{s:4:"name";s:6:"src_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"Source image handle.";s:11:"phpdoc_name";s:6:"src_im";}i:2;a:5:{s:4:"name";s:5:"dst_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination X-ordinate.";s:11:"phpdoc_name";s:5:"dst_x";}i:3;a:5:{s:4:"name";s:5:"dst_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination Y-ordinate.";s:11:"phpdoc_name";s:5:"dst_y";}i:4;a:5:{s:4:"name";s:5:"src_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source X-ordinate.";s:11:"phpdoc_name";s:5:"src_x";}i:5;a:5:{s:4:"name";s:5:"src_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source Y-ordinate.";s:11:"phpdoc_name";s:5:"src_y";}i:6;a:5:{s:4:"name";s:5:"dst_w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Destination width.";s:11:"phpdoc_name";s:5:"dst_w";}i:7;a:5:{s:4:"name";s:5:"dst_h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Destination height.";s:11:"phpdoc_name";s:5:"dst_h";}i:8;a:5:{s:4:"name";s:5:"src_w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Source width.";s:11:"phpdoc_name";s:5:"src_w";}i:9;a:5:{s:4:"name";s:5:"src_h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Source height.";s:11:"phpdoc_name";s:5:"src_h";}}s:4:"name";s:18:"imagecopyresampled";s:11:"description";s:49:"Copy and resize part of an image with resampling.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:16:"imagecopyresized";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:6:"dst_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:25:"Destination image handle.";s:11:"phpdoc_name";s:6:"dst_im";}i:1;a:5:{s:4:"name";s:6:"src_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"Source image handle.";s:11:"phpdoc_name";s:6:"src_im";}i:2;a:5:{s:4:"name";s:5:"dst_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination X-ordinate.";s:11:"phpdoc_name";s:5:"dst_x";}i:3;a:5:{s:4:"name";s:5:"dst_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination Y-ordinate.";s:11:"phpdoc_name";s:5:"dst_y";}i:4;a:5:{s:4:"name";s:5:"src_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source X-ordinate.";s:11:"phpdoc_name";s:5:"src_x";}i:5;a:5:{s:4:"name";s:5:"src_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source Y-ordinate.";s:11:"phpdoc_name";s:5:"src_y";}i:6;a:5:{s:4:"name";s:5:"dst_w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Destination width.";s:11:"phpdoc_name";s:5:"dst_w";}i:7;a:5:{s:4:"name";s:5:"dst_h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Destination height.";s:11:"phpdoc_name";s:5:"dst_h";}i:8;a:5:{s:4:"name";s:5:"src_w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Source width.";s:11:"phpdoc_name";s:5:"src_w";}i:9;a:5:{s:4:"name";s:5:"src_h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Source height.";s:11:"phpdoc_name";s:5:"src_h";}}s:4:"name";s:16:"imagecopyresized";s:11:"description";s:33:"Copy and resize part of an image.";s:5:"flags";a:0:{}}s:11:"imagecreate";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"width";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Width.";s:11:"phpdoc_name";s:5:"width";}i:1;a:5:{s:4:"name";s:6:"height";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"Height.";s:11:"phpdoc_name";s:6:"height";}}s:4:"name";s:11:"imagecreate";s:11:"description";s:33:"Create a new palette based image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";}}s:21:"imagecreatefromstring";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The image.";s:11:"phpdoc_name";s:5:"image";}}s:4:"name";s:21:"imagecreatefromstring";s:11:"description";s:55:"Create a new image from the image stream in the string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"~resource";s:11:"description";s:32:"The image handle (false: error).";}}s:18:"imagecreatefrompng";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:13:"The PNG file.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:18:"imagecreatefrompng";s:11:"description";s:43:"Create a new image from a PNG file on disk.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"~resource";s:11:"description";s:32:"The image handle (false: error).";}}s:19:"imagecreatefromjpeg";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:14:"The JPEG file.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:19:"imagecreatefromjpeg";s:11:"description";s:44:"Create a new image from a JPEG file on disk.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"~resource";s:11:"description";s:32:"The image handle (false: error).";}}s:16:"imageistruecolor";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}}s:4:"name";s:16:"imageistruecolor";s:11:"description";s:44:"Finds whether an image is a truecolor image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether the image is truecolor.";}}s:20:"imagecreatetruecolor";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Width.";s:11:"phpdoc_name";s:1:"x";}i:1;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"Height.";s:11:"phpdoc_name";s:1:"y";}}s:4:"name";s:20:"imagecreatetruecolor";s:11:"description";s:29:"Create a new truecolor image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";}}s:12:"imagecolorat";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"X ordinate.";s:11:"phpdoc_name";s:1:"x";}i:2;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Y ordinate.";s:11:"phpdoc_name";s:1:"y";}}s:4:"name";s:12:"imagecolorat";s:11:"description";s:38:"Get the index of the color of a pixel.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:11:"The colour.";}}s:19:"imagecolorsforindex";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The colour.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:19:"imagecolorsforindex";s:11:"description";s:28:"Get the colors for an index.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"Map of components.";}}s:12:"imagedestroy";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}}s:4:"name";s:12:"imagedestroy";s:11:"description";s:26:"Destroy an image resource.";s:5:"flags";a:0:{}}s:9:"imagefill";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Start from X.";s:11:"phpdoc_name";s:1:"x";}i:2;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Start from Y.";s:11:"phpdoc_name";s:1:"y";}i:3;a:5:{s:4:"name";s:6:"colour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The colour code to use.";s:11:"phpdoc_name";s:6:"colour";}}s:4:"name";s:9:"imagefill";s:11:"description";s:11:"Flood fill.";s:5:"flags";a:0:{}}s:15:"imagefontheight";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"font";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"Font code.";s:11:"phpdoc_name";s:4:"font";}}s:4:"name";s:15:"imagefontheight";s:11:"description";s:16:"Get font height.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:7:"Height.";}}s:14:"imagefontwidth";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"font";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"Font code.";s:11:"phpdoc_name";s:4:"font";}}s:4:"name";s:14:"imagefontwidth";s:11:"description";s:15:"Get font width.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:6:"Width.";}}s:9:"imagejpeg";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:7:{s:4:"name";s:8:"filename";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 filename (null: output to browser).";s:11:"phpdoc_name";s:8:"filename";}i:2;a:7:{s:4:"name";s:7:"quality";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:30:"Quality level (null: default).";s:11:"phpdoc_name";s:7:"quality";}}s:4:"name";s:9:"imagejpeg";s:11:"description";s:40:"Output image to browser or file as JPEG.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:8:"imagepng";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:7:{s:4:"name";s:8:"filename";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 filename (null: output to browser).";s:11:"phpdoc_name";s:8:"filename";}i:2;a:7:{s:4:"name";s:7:"quality";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:53:"Compression level (0-9, 9 being highest compression).";s:11:"phpdoc_name";s:7:"quality";}}s:4:"name";s:8:"imagepng";s:11:"description";s:39:"Output image to browser or file as PNG.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:14:"imagesavealpha";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:8:"saveflag";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to save alpha channel information.";s:11:"phpdoc_name";s:8:"saveflag";}}s:4:"name";s:14:"imagesavealpha";s:11:"description";s:117:"Set the flag to save full alpha channel information (as opposed to single-color transparency) when saving PNG images.";s:5:"flags";a:0:{}}s:13:"imagesetpixel";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"X-ordinate.";s:11:"phpdoc_name";s:1:"x";}i:2;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Y-ordinate.";s:11:"phpdoc_name";s:1:"y";}i:3;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Colour code.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:13:"imagesetpixel";s:11:"description";s:19:"Set a single pixel.";s:5:"flags";a:0:{}}s:11:"imagestring";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:4:"font";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"Font code.";s:11:"phpdoc_name";s:4:"font";}i:2;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"X-ordinate.";s:11:"phpdoc_name";s:1:"x";}i:3;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Y-ordinate.";s:11:"phpdoc_name";s:1:"y";}i:4;a:5:{s:4:"name";s:1:"s";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Text to draw.";s:11:"phpdoc_name";s:1:"s";}i:5;a:5:{s:4:"name";s:3:"col";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Colour code.";s:11:"phpdoc_name";s:3:"col";}}s:4:"name";s:11:"imagestring";s:11:"description";s:27:"Draw a string horizontally.";s:5:"flags";a:0:{}}s:7:"imagesx";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}}s:4:"name";s:7:"imagesx";s:11:"description";s:16:"Get image width.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"The image width.";}}s:7:"imagesy";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}}s:4:"name";s:7:"imagesy";s:11:"description";s:17:"Get image height.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:17:"The image height.";}}s:13:"imagestringup";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:4:"font";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:16:"The loaded font.";s:11:"phpdoc_name";s:4:"font";}i:2;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"X-ordinate.";s:11:"phpdoc_name";s:1:"x";}i:3;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Y-ordinate.";s:11:"phpdoc_name";s:1:"y";}i:4;a:5:{s:4:"name";s:1:"s";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Text to draw.";s:11:"phpdoc_name";s:1:"s";}i:5;a:5:{s:4:"name";s:3:"col";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Colour code.";s:11:"phpdoc_name";s:3:"col";}}s:4:"name";s:13:"imagestringup";s:11:"description";s:53:"Give the bounding box of a text using TrueType fonts.";s:5:"flags";a:0:{}}s:12:"imagettfbbox";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"size";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:24:"The font size in pixels.";s:11:"phpdoc_name";s:4:"size";}i:1;a:5:{s:4:"name";s:5:"angle";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:48:"Angle in degrees in which text will be measured.";s:11:"phpdoc_name";s:5:"angle";}i:2;a:5:{s:4:"name";s:8:"fontfile";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"The name of the TrueType font file.";s:11:"phpdoc_name";s:8:"fontfile";}i:3;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The string to be measured.";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:12:"imagettfbbox";s:11:"description";s:53:"Give the bounding box of a text using TrueType fonts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:137:"Tuple: lower-left-X, lower-left-Y, lower-right-X, lower-right-Y, upper-right-X, upper-right-Y, upper-left-X, upper-left-Y (false: error).";}}s:12:"imagettftext";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:6:"handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:17:"The image handle.";s:11:"phpdoc_name";s:6:"handle";}i:1;a:5:{s:4:"name";s:4:"size";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:24:"The font size in pixels.";s:11:"phpdoc_name";s:4:"size";}i:2;a:5:{s:4:"name";s:5:"angle";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:48:"Angle in degrees in which text will be measured.";s:11:"phpdoc_name";s:5:"angle";}i:3;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"X-ordinate.";s:11:"phpdoc_name";s:1:"x";}i:4;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Y-ordinate.";s:11:"phpdoc_name";s:1:"y";}i:5;a:5:{s:4:"name";s:6:"colour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Colour code.";s:11:"phpdoc_name";s:6:"colour";}i:6;a:5:{s:4:"name";s:8:"fontfile";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:35:"The name of the TrueType font file.";s:11:"phpdoc_name";s:8:"fontfile";}i:7;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Text to draw.";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:12:"imagettftext";s:11:"description";s:53:"Give the bounding box of a text using TrueType fonts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:137:"Tuple: lower-left-X, lower-left-Y, lower-right-X, lower-right-Y, upper-right-X, upper-right-Y, upper-left-X, upper-left-Y (false: error).";}}s:10:"imagetypes";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"imagetypes";s:11:"description";s:63:"Return the image types supported by this execution environment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:63:"Bit field of constants: IMG_GIF | IMG_JPG | IMG_PNG | IMG_WBMP.";}}s:8:"imagearc";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:2:"cx";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"X@top-left.";s:11:"phpdoc_name";s:2:"cx";}i:2;a:5:{s:4:"name";s:2:"cy";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Y@top-left.";s:11:"phpdoc_name";s:2:"cy";}i:3;a:5:{s:4:"name";s:1:"w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"width.";s:11:"phpdoc_name";s:1:"w";}i:4;a:5:{s:4:"name";s:1:"h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"height.";s:11:"phpdoc_name";s:1:"h";}i:5;a:5:{s:4:"name";s:1:"s";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"start degrees (0 degrees=3 o clock).";s:11:"phpdoc_name";s:1:"s";}i:6;a:5:{s:4:"name";s:1:"e";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"end degrees (0 degrees=3 o clock).";s:11:"phpdoc_name";s:1:"e";}i:7;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Colour code.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:8:"imagearc";s:11:"description";s:23:"Draw a partial ellipse.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:14:"imagefilledarc";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:2:"cx";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"X@top-left.";s:11:"phpdoc_name";s:2:"cx";}i:2;a:5:{s:4:"name";s:2:"cy";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"Y@top-left.";s:11:"phpdoc_name";s:2:"cy";}i:3;a:5:{s:4:"name";s:1:"w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"width.";s:11:"phpdoc_name";s:1:"w";}i:4;a:5:{s:4:"name";s:1:"h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"height.";s:11:"phpdoc_name";s:1:"h";}i:5;a:5:{s:4:"name";s:1:"s";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"start degrees (0 degrees=3 o clock).";s:11:"phpdoc_name";s:1:"s";}i:6;a:5:{s:4:"name";s:1:"e";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"end degrees (0 degrees=3 o clock).";s:11:"phpdoc_name";s:1:"e";}i:7;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:76:"Style, bitwise of IMG_ARC_PIE, IMG_ARC_CHORD, IMG_ARC_NOFILL, IMG_ARC_EDGED.";s:11:"phpdoc_name";s:5:"color";}i:8;a:5:{s:4:"name";s:5:"style";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Colour code.";s:11:"phpdoc_name";s:5:"style";}}s:4:"name";s:14:"imagefilledarc";s:11:"description";s:35:"Draw a partial ellipse and fill it.";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:"imagecopymergegray";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:6:"dst_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:25:"Destination image handle.";s:11:"phpdoc_name";s:6:"dst_im";}i:1;a:5:{s:4:"name";s:6:"src_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"Source image handle.";s:11:"phpdoc_name";s:6:"src_im";}i:2;a:5:{s:4:"name";s:5:"dst_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination X-ordinate.";s:11:"phpdoc_name";s:5:"dst_x";}i:3;a:5:{s:4:"name";s:5:"dst_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination Y-ordinate.";s:11:"phpdoc_name";s:5:"dst_y";}i:4;a:5:{s:4:"name";s:5:"src_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source X-ordinate.";s:11:"phpdoc_name";s:5:"src_x";}i:5;a:5:{s:4:"name";s:5:"src_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source Y-ordinate.";s:11:"phpdoc_name";s:5:"src_y";}i:6;a:5:{s:4:"name";s:5:"src_w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Width to copy.";s:11:"phpdoc_name";s:5:"src_w";}i:7;a:5:{s:4:"name";s:5:"src_h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Height to copy.";s:11:"phpdoc_name";s:5:"src_h";}i:8;a:5:{s:4:"name";s:3:"pct";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Opacity value.";s:11:"phpdoc_name";s:3:"pct";}}s:4:"name";s:18:"imagecopymergegray";s:11:"description";s:48:"Copy and merge part of an image with gray scale.";s:5:"flags";a:0:{}}s:9:"imageline";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:2:"x1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"Start-X.";s:11:"phpdoc_name";s:2:"x1";}i:2;a:5:{s:4:"name";s:2:"y1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"Start-Y.";s:11:"phpdoc_name";s:2:"y1";}i:3;a:5:{s:4:"name";s:2:"x2";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"End-X.";s:11:"phpdoc_name";s:2:"x2";}i:4;a:5:{s:4:"name";s:2:"y2";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"End-Y.";s:11:"phpdoc_name";s:2:"y2";}i:5;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The colour.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:9:"imageline";s:11:"description";s:12:"Draw a line.";s:5:"flags";a:0:{}}s:12:"imageellipse";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:2:"cx";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Centre-X.";s:11:"phpdoc_name";s:2:"cx";}i:2;a:5:{s:4:"name";s:2:"cy";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Centre-Y.";s:11:"phpdoc_name";s:2:"cy";}i:3;a:5:{s:4:"name";s:1:"w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Width.";s:11:"phpdoc_name";s:1:"w";}i:4;a:5:{s:4:"name";s:1:"h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"Height.";s:11:"phpdoc_name";s:1:"h";}i:5;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"Colour.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:12:"imageellipse";s:11:"description";s:16:"Draw an ellipse.";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:"imagefilledellipse";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:2:"cx";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Centre-X.";s:11:"phpdoc_name";s:2:"cx";}i:2;a:5:{s:4:"name";s:2:"cy";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Centre-Y.";s:11:"phpdoc_name";s:2:"cy";}i:3;a:5:{s:4:"name";s:1:"w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Width.";s:11:"phpdoc_name";s:1:"w";}i:4;a:5:{s:4:"name";s:1:"h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"Height.";s:11:"phpdoc_name";s:1:"h";}i:5;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"Colour.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:18:"imagefilledellipse";s:11:"description";s:22:"Draw a filled ellipse.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:9:"imagechar";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:4:"font";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Font number.";s:11:"phpdoc_name";s:4:"font";}i:2;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:2:"X.";s:11:"phpdoc_name";s:1:"x";}i:3;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:2:"Y.";s:11:"phpdoc_name";s:1:"y";}i:4;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"What to write.";s:11:"phpdoc_name";s:1:"c";}i:5;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:9:"imagechar";s:11:"description";s:30:"Draw a character horizontally.";s:5:"flags";a:0:{}}s:18:"imagefilledpolygon";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:6:"points";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Array of pairs.";s:11:"phpdoc_name";s:6:"points";}i:2;a:5:{s:4:"name";s:10:"num_points";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:26:"Number of points in array.";s:11:"phpdoc_name";s:10:"num_points";}i:3;a:5:{s:4:"name";s:6:"colour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";s:11:"phpdoc_name";s:6:"colour";}}s:4:"name";s:18:"imagefilledpolygon";s:11:"description";s:22:"Draw a filled polygon.";s:5:"flags";a:0:{}}s:12:"imagepolygon";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:6:"points";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Array of pairs.";s:11:"phpdoc_name";s:6:"points";}i:2;a:5:{s:4:"name";s:10:"num_points";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:26:"Number of points in array.";s:11:"phpdoc_name";s:10:"num_points";}i:3;a:5:{s:4:"name";s:6:"colour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";s:11:"phpdoc_name";s:6:"colour";}}s:4:"name";s:12:"imagepolygon";s:11:"description";s:15:"Draw a polygon.";s:5:"flags";a:0:{}}s:20:"imagefilledrectangle";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:2:"x1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"First-X.";s:11:"phpdoc_name";s:2:"x1";}i:2;a:5:{s:4:"name";s:2:"y1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"First-Y.";s:11:"phpdoc_name";s:2:"y1";}i:3;a:5:{s:4:"name";s:2:"x2";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Second-X.";s:11:"phpdoc_name";s:2:"x2";}i:4;a:5:{s:4:"name";s:2:"y2";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Second-Y.";s:11:"phpdoc_name";s:2:"y2";}i:5;a:5:{s:4:"name";s:3:"col";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";s:11:"phpdoc_name";s:3:"col";}}s:4:"name";s:20:"imagefilledrectangle";s:11:"description";s:24:"Draw a filled rectangle.";s:5:"flags";a:0:{}}s:14:"imagerectangle";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:2:"x1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"First-X.";s:11:"phpdoc_name";s:2:"x1";}i:2;a:5:{s:4:"name";s:2:"y1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:8:"First-Y.";s:11:"phpdoc_name";s:2:"y1";}i:3;a:5:{s:4:"name";s:2:"x2";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Second-X.";s:11:"phpdoc_name";s:2:"x2";}i:4;a:5:{s:4:"name";s:2:"y2";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Second-Y.";s:11:"phpdoc_name";s:2:"y2";}i:5;a:5:{s:4:"name";s:3:"col";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";s:11:"phpdoc_name";s:3:"col";}}s:4:"name";s:14:"imagerectangle";s:11:"description";s:17:"Draw a rectangle.";s:5:"flags";a:0:{}}s:17:"imagefilltoborder";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Origin X.";s:11:"phpdoc_name";s:1:"x";}i:2;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"Origin Y.";s:11:"phpdoc_name";s:1:"y";}i:3;a:5:{s:4:"name";s:6:"border";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"Border colour number.";s:11:"phpdoc_name";s:6:"border";}i:4;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Fill colour number.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:17:"imagefilltoborder";s:11:"description";s:29:"Flood fill to specific color.";s:5:"flags";a:0:{}}s:17:"imagegammacorrect";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:2:"in";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:12:"Input gamma.";s:11:"phpdoc_name";s:2:"in";}i:2;a:5:{s:4:"name";s:3:"out";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:13:"Output gamma.";s:11:"phpdoc_name";s:3:"out";}}s:4:"name";s:17:"imagegammacorrect";s:11:"description";s:39:"Apply a gamma correction to a GD image.";s:5:"flags";a:0:{}}s:14:"imageinterlace";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:9:"interlace";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:7:"On/Off.";s:11:"phpdoc_name";s:9:"interlace";}}s:4:"name";s:14:"imageinterlace";s:11:"description";s:47:"Enable or disable interlace / progressive-save.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether interlace is set.";}}s:13:"imageloadfont";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:5:"File.";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:13:"imageloadfont";s:11:"description";s:16:"Load a new font.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:25:"Font code (false: error).";}}s:16:"imagepalettecopy";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:30:"The image the palette is from.";s:11:"phpdoc_name";s:11:"destination";}i:1;a:5:{s:4:"name";s:6:"source";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:28:"The image the palette is to.";s:11:"phpdoc_name";s:6:"source";}}s:4:"name";s:16:"imagepalettecopy";s:11:"description";s:43:"Copy the palette from one image to another.";s:5:"flags";a:0:{}}s:13:"imagesetbrush";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:5:"brush";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:16:"The brush image.";s:11:"phpdoc_name";s:5:"brush";}}s:4:"name";s:13:"imagesetbrush";s:11:"description";s:37:"Set the brush image for line drawing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:13:"imagesetstyle";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:5:"style";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:59:"Style number (IMG_COLOR_STYLED or IMG_COLOR_STYLEDBRUSHED).";s:11:"phpdoc_name";s:5:"style";}}s:4:"name";s:13:"imagesetstyle";s:11:"description";s:31:"Set the style for line drawing.";s:5:"flags";a:0:{}}s:17:"imagesetthickness";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:9:"thickness";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"Thickness in pixels.";s:11:"phpdoc_name";s:9:"thickness";}}s:4:"name";s:17:"imagesetthickness";s:11:"description";s:35:"Set the thickness for line drawing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:12:"imagesettile";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:4:"tile";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:15:"The tile image.";s:11:"phpdoc_name";s:4:"tile";}}s:4:"name";s:12:"imagesettile";s:11:"description";s:31:"Set the tile image for filling.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:23:"imagetruecolortopalette";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:6:"dither";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether to use dithering.";s:11:"phpdoc_name";s:6:"dither";}i:2;a:5:{s:4:"name";s:7:"ncolors";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:68:"The maximum number of colors that should be retained in the palette.";s:11:"phpdoc_name";s:7:"ncolors";}}s:4:"name";s:23:"imagetruecolortopalette";s:11:"description";s:45:"Convert a truecolor image to a palette image.";s:5:"flags";a:0:{}}s:11:"imagecharup";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:4:"font";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Font number.";s:11:"phpdoc_name";s:4:"font";}i:2;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:2:"X.";s:11:"phpdoc_name";s:1:"x";}i:3;a:5:{s:4:"name";s:1:"y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:2:"Y.";s:11:"phpdoc_name";s:1:"y";}i:4;a:5:{s:4:"name";s:1:"c";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"What to write.";s:11:"phpdoc_name";s:1:"c";}i:5;a:5:{s:4:"name";s:5:"color";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";s:11:"phpdoc_name";s:5:"color";}}s:4:"name";s:11:"imagecharup";s:11:"description";s:28:"Draw a character vertically.";s:5:"flags";a:0:{}}s:17:"imagecolorclosest";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Red.";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Green.";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Blue.";s:11:"phpdoc_name";s:4:"blue";}}s:4:"name";s:17:"imagecolorclosest";s:11:"description";s:58:"Get the index of the closest color to the specified color.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";}}s:22:"imagecolorclosestalpha";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Red.";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Green.";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Blue.";s:11:"phpdoc_name";s:4:"blue";}i:4;a:5:{s:4:"name";s:5:"alpha";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Alpha.";s:11:"phpdoc_name";s:5:"alpha";}}s:4:"name";s:22:"imagecolorclosestalpha";s:11:"description";s:66:"Get the index of the closest color to the specified color + alpha.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";}}s:20:"imagecolorclosesthwb";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Red.";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Green.";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Blue.";s:11:"phpdoc_name";s:4:"blue";}}s:4:"name";s:20:"imagecolorclosesthwb";s:11:"description";s:94:"Get the index of the color which has the hue, white and blackness nearest to the given color .";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";}}s:20:"imagecolordeallocate";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:6:"colour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";s:11:"phpdoc_name";s:6:"colour";}}s:4:"name";s:20:"imagecolordeallocate";s:11:"description";s:33:"De-allocate a color for an image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:15:"imagecolorexact";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Red.";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Green.";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Blue.";s:11:"phpdoc_name";s:4:"blue";}}s:4:"name";s:15:"imagecolorexact";s:11:"description";s:37:"Get the index of the specified color.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";}}s:20:"imagecolorexactalpha";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Red.";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Green.";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Blue.";s:11:"phpdoc_name";s:4:"blue";}i:4;a:5:{s:4:"name";s:5:"alpha";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Alpha.";s:11:"phpdoc_name";s:5:"alpha";}}s:4:"name";s:20:"imagecolorexactalpha";s:11:"description";s:45:"Get the index of the specified color + alpha.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:29:"Colour number (false: error).";}}s:17:"imagecolorresolve";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Red.";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Green.";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Blue.";s:11:"phpdoc_name";s:4:"blue";}}s:4:"name";s:17:"imagecolorresolve";s:11:"description";s:73:"Get the index of the specified color or its closest possible alternative.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"Colour number.";}}s:22:"imagecolorresolvealpha";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Red.";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Green.";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Blue.";s:11:"phpdoc_name";s:4:"blue";}i:4;a:5:{s:4:"name";s:5:"alpha";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Alpha.";s:11:"phpdoc_name";s:5:"alpha";}}s:4:"name";s:22:"imagecolorresolvealpha";s:11:"description";s:81:"Get the index of the specified color + alpha or its closest possible alternative.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:29:"Colour number (false: error).";}}s:13:"imagecolorset";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}i:1;a:5:{s:4:"name";s:3:"red";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:4:"Red.";s:11:"phpdoc_name";s:3:"red";}i:2;a:5:{s:4:"name";s:5:"green";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:6:"Green.";s:11:"phpdoc_name";s:5:"green";}i:3;a:5:{s:4:"name";s:4:"blue";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:5:"Blue.";s:11:"phpdoc_name";s:4:"blue";}}s:4:"name";s:13:"imagecolorset";s:11:"description";s:46:"Set the color for the specified palette index.";s:5:"flags";a:0:{}}s:16:"imagecolorstotal";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"image";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:19:"The image involved.";s:11:"phpdoc_name";s:5:"image";}}s:4:"name";s:16:"imagecolorstotal";s:11:"description";s:52:"Find out the number of colors in an image's palette.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:24:"Total number of colours.";}}s:14:"imagecopymerge";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:6:"dst_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:25:"Destination image handle.";s:11:"phpdoc_name";s:6:"dst_im";}i:1;a:5:{s:4:"name";s:6:"src_im";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:20:"Source image handle.";s:11:"phpdoc_name";s:6:"src_im";}i:2;a:5:{s:4:"name";s:5:"dst_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination X-ordinate.";s:11:"phpdoc_name";s:5:"dst_x";}i:3;a:5:{s:4:"name";s:5:"dst_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"Destination Y-ordinate.";s:11:"phpdoc_name";s:5:"dst_y";}i:4;a:5:{s:4:"name";s:5:"src_x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source X-ordinate.";s:11:"phpdoc_name";s:5:"src_x";}i:5;a:5:{s:4:"name";s:5:"src_y";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Source Y-ordinate.";s:11:"phpdoc_name";s:5:"src_y";}i:6;a:5:{s:4:"name";s:5:"src_w";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Width to copy.";s:11:"phpdoc_name";s:5:"src_w";}i:7;a:5:{s:4:"name";s:5:"src_h";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Height to copy.";s:11:"phpdoc_name";s:5:"src_h";}i:8;a:5:{s:4:"name";s:3:"pct";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Opacity value.";s:11:"phpdoc_name";s:3:"pct";}}s:4:"name";s:14:"imagecopymerge";s:11:"description";s:32:"Copy and merge part of an image.";s:5:"flags";a:0:{}}s:7:"implode";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"glue";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The glue component (becomes a deliminator).";s:11:"phpdoc_name";s:4:"glue";}i:1;a:5:{s:4:"name";s:6:"pieces";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"The pieces to join.";s:11:"phpdoc_name";s:6:"pieces";}}s:4:"name";s:7:"implode";s:11:"description";s:34:"Join array elements with a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The joined string.";}}s:8:"in_array";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"needle";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:7:"Needle.";s:11:"phpdoc_name";s:6:"needle";}i:1;a:5:{s:4:"name";s:8:"haystack";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Haystack.";s:11:"phpdoc_name";s:8:"haystack";}i:2;a:7:{s:4:"name";s:6:"strict";s:7:"default";s:13:"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:"Use strict type checking.";s:11:"phpdoc_name";s:6:"strict";}}s:4:"name";s:8:"in_array";s:11:"description";s:37:"Checks if a value exists in an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the value exists in the array.";}}s:7:"include";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:36:"The filename of the file to include.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:7:"include";s:11:"description";s:40:"Include and evaluate the specified file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:33:"Success status or returned value.";}}s:12:"include_once";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:36:"The filename of the file to include.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:12:"include_once";s:11:"description";s:86:"Include and evaluate the specified file, but only if it has not already been included.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:33:"Success status or returned value.";}}s:7:"ini_get";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"varname";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Config option.";s:11:"phpdoc_name";s:7:"varname";}}s:4:"name";s:7:"ini_get";s:11:"description";s:122:"Gets the value of a configuration option. Note: On Phalanger any unknown config options will produce a warning if fetched.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~mixed";s:11:"description";s:81:"Value of option (empty: no such config option, or an empty value) (false: ditto).";}}s:7:"ini_set";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Config option.";s:11:"phpdoc_name";s:3:"var";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"New value of option.";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:7:"ini_set";s:11:"description";s:41:"Sets the value of a configuration option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:35:"Old value of option (false: error).";}}s:6:"intval";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:49:"Integer, but in some other form (usually string).";s:11:"phpdoc_name";s:3:"var";}i:1;a:7:{s:4:"name";s:4:"base";s:7:"default";i:10;s:11:"default_raw";s:2:"10";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The base.";s:11:"phpdoc_name";s:4:"base";}}s:4:"name";s:6:"intval";s:11:"description";s:32:"Get integer value of a variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:23:"The integer, extracted.";}}s:4:"is_a";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"object";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:11:"The object.";s:11:"phpdoc_name";s:6:"object";}i:1;a:5:{s:4:"name";s:10:"class_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The class name.";s:11:"phpdoc_name";s:10:"class_name";}}s:4:"name";s:4:"is_a";s:11:"description";s:76:"Whether the object is of this class or has this class as one of its parents.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:8:"is_array";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:8:"is_array";s:11:"description";s:37:"Finds whether a variable is an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:7:"is_bool";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:7:"is_bool";s:11:"description";s:38:"Finds whether a variable is a boolean.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:6:"is_dir";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:18:"The path to check.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:6:"is_dir";s:11:"description";s:39:"Finds whether a path is to a directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:7:"is_file";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:18:"The path to check.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:7:"is_file";s:11:"description";s:34:"Finds whether a path is to a file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:7:"is_link";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:18:"The path to check.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:7:"is_link";s:11:"description";s:43:"Finds whether a path is to a symbolic link.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:8:"is_float";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:8:"is_float";s:11:"description";s:36:"Finds whether a variable is a float.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:10:"is_integer";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:10:"is_integer";s:11:"description";s:39:"Finds whether a variable is an integer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:11:"is_callable";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:11:"is_callable";s:11:"description";s:61:"Finds whether a variable holds a callable function reference.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:16:"Whether it does.";}}s:7:"is_null";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:7:"is_null";s:11:"description";s:33:"Finds whether a variable is null.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:10:"is_numeric";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:10:"is_numeric";s:11:"description";s:79:"Finds whether a variable is numeric (e.g. a numeric string, or a pure integer).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:9:"is_object";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:9:"is_object";s:11:"description";s:38:"Finds whether a variable is an object.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:11:"is_readable";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:18:"The path to check.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"is_readable";s:11:"description";s:51:"Finds whether a path is to an actual readable file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:11:"is_resource";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:11:"is_resource";s:11:"description";s:39:"Finds whether a variable is a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:9:"is_string";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"var";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:14:"What to check.";s:11:"phpdoc_name";s:3:"var";}}s:4:"name";s:9:"is_string";s:11:"description";s:37:"Finds whether a variable is a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:16:"is_uploaded_file";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:18:"The path to check.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:16:"is_uploaded_file";s:11:"description";s:51:"Finds whether a path is to an actual uploaded file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:11:"is_writable";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:18:"The path to check.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:11:"is_writable";s:11:"description";s:52:"Finds whether a path is to an actual writeable file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it is.";}}s:5:"isset";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:1;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The variable.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:5:"isset";s:11:"description";s:173:"Finds whether a variable exists / is not null / is an actually derefereable array element. Do not use this for the null case, and otherwise ONLY when for efficiency reasons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:18:"Whether it is set.";}}s:6:"krsort";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:18:"The array to sort.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:6:"krsort";s:11:"description";s:38:"Sort an array by key in reverse order.";s:5:"flags";a:0:{}}s:5:"ksort";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:18:"The array to sort.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:5:"ksort";s:11:"description";s:21:"Sort an array by key.";s:5:"flags";a:0:{}}s:10:"localeconv";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"localeconv";s:11:"description";s:35:"Get numeric formatting information.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"Array of formatting information.";}}s:5:"ltrim";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{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:24:"The string to trim from.";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:10:"characters";s:7:"default";s:5:"
";s:11:"default_raw";s:14:""\t\n\r\0\x0B"";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Characters to trim.";s:11:"phpdoc_name";s:10:"characters";}}s:4:"name";s:5:"ltrim";s:11:"description";s:48:"Strip whitespace from the beginning of a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The trimmed string.";}}s:4:"mail";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The TO address.";s:11:"phpdoc_name";s:2:"to";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The subject.";s:11:"phpdoc_name";s:7:"subject";}i:2;a:5:{s:4:"name";s:7:"message";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The message.";s:11:"phpdoc_name";s:7:"message";}i:3;a:7:{s:4:"name";s:18:"additional_headers";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:19:"Additional headers.";s:11:"phpdoc_name";s:18:"additional_headers";}i:4;a:7:{s:4:"name";s:16:"additional_flags";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:99:"Additional stuff to send to sendmail executable (if appropriate, only works when safe mode is off).";s:11:"phpdoc_name";s:16:"additional_flags";}}s:4:"name";s:4:"mail";s:11:"description";s:15:"Send an e-mail.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:3:"max";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:4:"arg1";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:69:"First argument (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg1";}i:1;a:7:{s:4:"name";s:4:"arg2";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:97:"Second argument (null: no second argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg2";}i:2;a:7:{s:4:"name";s:4:"arg3";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:95:"Third argument (null: no third argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg3";}i:3;a:7:{s:4:"name";s:4:"arg4";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:97:"Fourth argument (null: no fourth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg4";}i:4;a:7:{s:4:"name";s:4:"arg5";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:94:"Fifth argument (null: no fith argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg5";}i:5;a:7:{s:4:"name";s:4:"arg6";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:95:"Sixth argument (null: no sixth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg6";}i:6;a:7:{s:4:"name";s:4:"arg7";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:99:"Seventh argument (null: no seventh argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg7";}i:7;a:7:{s:4:"name";s:4:"arg8";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:97:"Eighth argument (null: no eighth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg8";}i:8;a:7:{s:4:"name";s:4:"arg9";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:95:"Ninth argument (null: no ninth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg9";}i:9;a:7:{s:4:"name";s:5:"arg10";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:95:"Tenth argument (null: no tenth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:5:"arg10";}}s:4:"name";s:3:"max";s:11:"description";s:37:"Find highest value between arguments.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:28:"The highest valued argument.";}}s:3:"md5";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{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:15:"String to hash.";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:3:"md5";s:11:"description";s:35:"Calculate the md5 hash of a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Hashed result.";}}s:13:"method_exists";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"object";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:37:"Object of the class we want to check.";s:11:"phpdoc_name";s:6:"object";}i:1;a:5:{s:4:"name";s:11:"method_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The method name.";s:11:"phpdoc_name";s:11:"method_name";}}s:4:"name";s:13:"method_exists";s:11:"description";s:34:"Checks if the class method exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether the class method exists.";}}s:9:"microtime";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"as_float";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:164:"Whether to return a float result. ALWAYS PASS THIS IN AS *FALSE* - FOR COMPATIBILITY WITH OLD VERSIONS OF PHP THAT DO NOT HAVE IT, WHILST PHP 6 DEFAULTS IT TO TRUE.";s:11:"phpdoc_name";s:8:"as_float";}}s:4:"name";s:9:"microtime";s:11:"description";s:48:"Return current UNIX timestamp with microseconds.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:11:"Micro-time.";}}s:3:"min";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:4:"arg1";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:69:"First argument (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg1";}i:1;a:7:{s:4:"name";s:4:"arg2";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:97:"Second argument (null: no second argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg2";}i:2;a:7:{s:4:"name";s:4:"arg3";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:95:"Third argument (null: no third argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg3";}i:3;a:7:{s:4:"name";s:4:"arg4";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:97:"Fourth argument (null: no fourth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg4";}i:4;a:7:{s:4:"name";s:4:"arg5";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:94:"Fifth argument (null: no fith argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg5";}i:5;a:7:{s:4:"name";s:4:"arg6";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:95:"Sixth argument (null: no sixth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg6";}i:6;a:7:{s:4:"name";s:4:"arg7";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:99:"Seventh argument (null: no seventh argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg7";}i:7;a:7:{s:4:"name";s:4:"arg8";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:97:"Eighth argument (null: no eighth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg8";}i:8;a:7:{s:4:"name";s:4:"arg9";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:95:"Ninth argument (null: no ninth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:4:"arg9";}i:9;a:7:{s:4:"name";s:5:"arg10";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:95:"Tenth argument (null: no tenth argument) (if array, then each treated as a separate parameter).";s:11:"phpdoc_name";s:5:"arg10";}}s:4:"name";s:3:"min";s:11:"description";s:36:"Find lowest value between arguments.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:27:"The lowest valued argument.";}}s:5:"mkdir";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{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:34:"The path to the directory to make.";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:4:"mode";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"The mode (e.g. 0777).";s:11:"phpdoc_name";s:4:"mode";}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:26:"Whether to do recursively.";s:11:"phpdoc_name";s:9:"recursive";}i:3;a:7:{s:4:"name";s:7:"context";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:57:"A stream context to attach to (null: no special context).";s:11:"phpdoc_name";s:7:"context";}}s:4:"name";s:5:"mkdir";s:11:"description";s:18:"{{creates-file}}}}";s:5:"flags";a:1:{i:0;s:12:"creates-file";}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:6:"mktime";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"hour";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The hour.";s:11:"phpdoc_name";s:4:"hour";}i:1;a:7:{s:4:"name";s:6:"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:23:"The minute (null: now).";s:11:"phpdoc_name";s:6:"minute";}i:2;a:7:{s:4:"name";s:6:"second";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:23:"The second (null: now).";s:11:"phpdoc_name";s:6:"second";}i:3;a:7:{s:4:"name";s:5:"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:22:"The month (null: now).";s:11:"phpdoc_name";s:5:"month";}i:4;a:7:{s:4:"name";s:3:"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:20:"The day (null: now).";s:11:"phpdoc_name";s:3:"day";}i:5;a:7:{s:4:"name";s:4:"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:21:"The year (null: now).";s:11:"phpdoc_name";s:4:"year";}}s:4:"name";s:6:"mktime";s:11:"description";s:47:"Get UNIX timestamp for a componentialised date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:14:"The timestamp.";}}s:18:"move_uploaded_file";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{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:68:"Filename to move (taken from tmpname element of $_FILES list entry).";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:64:"Path to move file to (preferably containing filename component).";s:11:"phpdoc_name";s:11:"destination";}}s:4:"name";s:18:"move_uploaded_file";s:11:"description";s:18:"{{creates-file}}}}";s:5:"flags";a:1:{i:0;s:12:"creates-file";}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"The success status.";}}s:13:"mt_getrandmax";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"mt_getrandmax";s:11:"description";s:34:"Get largest possible random value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:10:"The value.";}}s:7:"mt_rand";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"min";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Minimum value.";s:11:"phpdoc_name";s:3:"min";}i:1;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Maximum value.";s:11:"phpdoc_name";s:3:"max";}}s:4:"name";s:7:"mt_rand";s:11:"description";s:31:"Generate a better random value.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"Random value.";}}s:8:"mt_srand";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"seed";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The seed.";s:11:"phpdoc_name";s:4:"seed";}}s:4:"name";s:8:"mt_srand";s:11:"description";s:40:"Seed the better random number generator.";s:5:"flags";a:0:{}}s:13:"number_format";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"number";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:127:"The number to format [integer or float] (technically always float because it could be larger than an integer, but that's ugly).";s:11:"phpdoc_name";s:6:"number";}i:1;a:7:{s:4:"name";s:8:"decimals";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:46:"The number of decimal fraction digits to show.";s:11:"phpdoc_name";s:8:"decimals";}i:2;a:7:{s:4:"name";s:9:"dec_point";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:37:"The string to use as a decimal point.";s:11:"phpdoc_name";s:9:"dec_point";}i:3;a:7:{s:4:"name";s:13:"thousands_sep";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:45:"The string to separate groups of 1000's with.";s:11:"phpdoc_name";s:13:"thousands_sep";}}s:4:"name";s:13:"number_format";s:11:"description";s:39:"Format a number with grouped thousands.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:28:"The string formatted number.";}}s:8:"ob_start";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"ob_start";s:11:"description";s:25:"Turn on output buffering.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:12:"ob_end_clean";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"ob_end_clean";s:11:"description";s:62:"Clean (erase) the output buffer and turn off output buffering.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:50:"Success status (could fail if there is no buffer).";}}s:12:"ob_end_flush";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"ob_end_flush";s:11:"description";s:73:"Flush (output and erase) the output buffer and turn off output buffering.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:50:"Success status (could fail if there is no buffer).";}}s:15:"ob_get_contents";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"ob_get_contents";s:11:"description";s:42:"Return the contents of the output buffer .";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:39:"The buffer contents (false: no buffer).";}}s:8:"ob_flush";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"ob_flush";s:11:"description";s:31:"Flush (send) the output buffer.";s:5:"flags";a:0:{}}s:12:"ob_get_clean";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"ob_get_clean";s:11:"description";s:61:"Get current buffer contents and delete current output buffer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:51:"Contents of the buffer (false: no buffer was open).";}}s:8:"ob_clean";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"ob_clean";s:11:"description";s:24:"Empty the output buffer.";s:5:"flags";a:0:{}}s:12:"ob_gzhandler";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"buffer";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Input string.";s:11:"phpdoc_name";s:6:"buffer";}i:1;a:5:{s:4:"name";s:4:"mode";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:56:"Irrelevant (we don't use this function directly anyway).";s:11:"phpdoc_name";s:4:"mode";}}s:4:"name";s:12:"ob_gzhandler";s:11:"description";s:49:"ob_start callback function to gzip output buffer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"Filtered version.";}}s:13:"ob_get_length";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"ob_get_length";s:11:"description";s:39:"Return the length of the output buffer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:36:"Output buffer length (false: error).";}}s:17:"ob_implicit_flush";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"flag";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"Flag (1 for on, 0 for off).";s:11:"phpdoc_name";s:4:"flag";}}s:4:"name";s:17:"ob_implicit_flush";s:11:"description";s:28:"Turn implicit flush on/off .";s:5:"flags";a:0:{}}s:5:"print";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"octal_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The string to output.";s:11:"phpdoc_name";s:12:"octal_string";}}s:4:"name";s:5:"print";s:11:"description";s:17:"Output something.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:23:"The number '1', always.";}}s:6:"octdec";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:12:"octal_string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"The string representation.";s:11:"phpdoc_name";s:12:"octal_string";}}s:4:"name";s:6:"octdec";s:11:"description";s:42:"String representation of octal to decimal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:62:"The integer ('decimal' form, although truly stored in binary).";}}s:7:"opendir";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:34:"The path to the directory to open.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:7:"opendir";s:11:"description";s:30:"Open a directory for analysis.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"~resource";s:11:"description";s:36:"The directory handle (false: error).";}}s:3:"ord";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:64:"String of length 1, containing character to find ASCII value of.";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:3:"ord";s:11:"description";s:32:"Return ASCII value of character.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:16:"The ASCII value.";}}s:4:"pack";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:31:{i:0;a:5:{s:4:"name";s:6:"format";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The formatting string.";s:11:"phpdoc_name";s:6:"format";}i:1;a:7:{s:4:"name";s:4:"arg1";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg1";}i:2;a:7:{s:4:"name";s:4:"arg2";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg2";}i:3;a:7:{s:4:"name";s:4:"arg3";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg3";}i:4;a:7:{s:4:"name";s:4:"arg4";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg4";}i:5;a:7:{s:4:"name";s:4:"arg5";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg5";}i:6;a:7:{s:4:"name";s:4:"arg6";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg6";}i:7;a:7:{s:4:"name";s:4:"arg7";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg7";}i:8;a:7:{s:4:"name";s:4:"arg8";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg8";}i:9;a:7:{s:4:"name";s:4:"arg9";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:4:"arg9";}i:10;a:7:{s:4:"name";s:5:"arg10";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg10";}i:11;a:7:{s:4:"name";s:5:"arg11";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg11";}i:12;a:7:{s:4:"name";s:5:"arg12";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg12";}i:13;a:7:{s:4:"name";s:5:"arg13";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg13";}i:14;a:7:{s:4:"name";s:5:"arg14";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg14";}i:15;a:7:{s:4:"name";s:5:"arg15";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg15";}i:16;a:7:{s:4:"name";s:5:"arg16";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg16";}i:17;a:7:{s:4:"name";s:5:"arg17";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg17";}i:18;a:7:{s:4:"name";s:5:"arg18";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg18";}i:19;a:7:{s:4:"name";s:5:"arg19";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg19";}i:20;a:7:{s:4:"name";s:5:"arg20";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg20";}i:21;a:7:{s:4:"name";s:5:"arg21";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg21";}i:22;a:7:{s:4:"name";s:5:"arg22";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg22";}i:23;a:7:{s:4:"name";s:5:"arg23";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg23";}i:24;a:7:{s:4:"name";s:5:"arg24";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg24";}i:25;a:7:{s:4:"name";s:5:"arg25";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg25";}i:26;a:7:{s:4:"name";s:5:"arg26";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg26";}i:27;a:7:{s:4:"name";s:5:"arg27";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg27";}i:28;a:7:{s:4:"name";s:5:"arg28";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg28";}i:29;a:7:{s:4:"name";s:5:"arg29";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg29";}i:30;a:7:{s:4:"name";s:5:"arg30";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:58:"Argument that binds to the formatting string (null: none).";s:11:"phpdoc_name";s:5:"arg30";}}s:4:"name";s:4:"pack";s:11:"description";s:29:"Pack data into binary string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The binary string.";}}s:9:"parse_url";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The URL to parse.";s:11:"phpdoc_name";s:3:"url";}i:1;a:7:{s:4:"name";s:9:"component";s:7:"default";i:-1;s:11:"default_raw";s:2:"-1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:46:"The component to get (-1 get all in an array).";s:11:"phpdoc_name";s:9:"component";}}s:4:"name";s:9:"parse_url";s:11:"description";s:38:"Parse a URL and return its components.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~mixed";s:11:"description";s:61:"A map of details about the URL (false: URL cannot be parsed).";}}s:8:"pathinfo";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:18:"The path to parse.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:8:"pathinfo";s:11:"description";s:38:"Returns information about a file path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:47:"A map of details about the path (false: error).";}}s:10:"preg_match";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:5:{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:12:"The pattern.";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The subject string.";s:11:"phpdoc_name";s:7:"subject";}i:2;a:7:{s:4:"name";s:7:"matches";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:1;s:4:"type";s:6:"?array";s:11:"description";s:220:"Where matches will be put (note that it is a list of maps, except the arrays are turned inside out) (null: do not store matches). Note that this is actually passed by reference, but is also optional. (null: don't gather)";s:11:"phpdoc_name";s:7:"matches";}i:3;a:7:{s:4:"name";s:5:"flags";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:33:"Either 0, or PREG_OFFSET_CAPTURE.";s:11:"phpdoc_name";s:5:"flags";}i:4;a:7:{s:4:"name";s:6:"offset";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:105:"Offset to start from. Usually use with 'A' modifier to anchor it (using '^' in the pattern will not work)";s:11:"phpdoc_name";s:6:"offset";}}s:4:"name";s:10:"preg_match";s:11:"description";s:35:"Perform a regular expression match.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:37:"The number of matches (false: error).";}}s:9:"preg_grep";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:12:"The pattern.";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The subject strings.";s:11:"phpdoc_name";s:7:"subject";}i:2;a:7:{s:4:"name";s:5:"flags";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:"Either 0, or PREG_GREP_INVERT.";s:11:"phpdoc_name";s:5:"flags";}}s:4:"name";s:9:"preg_grep";s:11:"description";s:37:"Array entries that match the pattern.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:8:"Matches.";}}s:14:"preg_match_all";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{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:12:"The pattern.";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The subject string.";s:11:"phpdoc_name";s:7:"subject";}i:2;a:5:{s:4:"name";s:7:"matches";s:3:"ref";b:1;s:4:"type";s:6:"?array";s:11:"description";s:191:"Where matches will be put (note that it is a list of maps, except the arrays are turned inside out). Note that this is actually passed by reference, but is also optional. (null: don't gather)";s:11:"phpdoc_name";s:7:"matches";}i:3;a:7:{s:4:"name";s:5:"flags";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:33:"Either 0, or PREG_OFFSET_CAPTURE.";s:11:"phpdoc_name";s:5:"flags";}}s:4:"name";s:14:"preg_match_all";s:11:"description";s:42:"Perform a global regular expression match.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"~integer";s:11:"description";s:37:"The number of matches (false: error).";}}s:12:"preg_replace";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:30:"The pattern (string or array).";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:5:{s:4:"name";s:11:"replacement";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:41:"The replacement string (string or array).";s:11:"phpdoc_name";s:11:"replacement";}i:2;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The subject string.";s:11:"phpdoc_name";s:7:"subject";}i:3;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:43:"The limit of replacements (null: no limit).";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:12:"preg_replace";s:11:"description";s:48:"Perform a regular expression search and replace.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:49:"The string with replacements made (false: error).";}}s:21:"preg_replace_callback";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{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:12:"The pattern.";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:5:{s:4:"name";s:8:"callback";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:13:"The callback.";s:11:"phpdoc_name";s:8:"callback";}i:2;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The subject string.";s:11:"phpdoc_name";s:7:"subject";}i:3;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:43:"The limit of replacements (null: no limit).";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:21:"preg_replace_callback";s:11:"description";s:65:"Perform a regular expression search and replace using a callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:49:"The string with replacements made (false: error).";}}s:10:"preg_split";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:4:{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:12:"The pattern.";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:5:{s:4:"name";s:7:"subject";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The subject.";s:11:"phpdoc_name";s:7:"subject";}i:2;a:7:{s:4:"name";s:10:"max_splits";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:54:"The maximum number of splits to make (null: no limit).";s:11:"phpdoc_name";s:10:"max_splits";}i:3;a:7:{s:4:"name";s:4:"mode";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:30:"The special mode (null: none).";s:11:"phpdoc_name";s:4:"mode";}}s:4:"name";s:10:"preg_split";s:11:"description";s:37:"Split string by a regular expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The array due to splitting.";}}s:7:"print_r";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.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:5:"mixed";s:11:"description";s:13:"The variable.";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:7:"print_r";s:11:"description";s:51:"Prints human-readable information about a variable.";s:5:"flags";a:0:{}}s:6:"putenv";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:40:"The string to send over (e.g. PATH=foo).";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:6:"putenv";s:11:"description";s:42:"Sets the value of an environment variable.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:12:"rawurldecode";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{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:21:"The string to decode.";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:12:"rawurldecode";s:11:"description";s:27:"Decode URL-encoded strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Decoded string.";}}s:12:"rawurlencode";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{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:21:"The string to encode.";s:11:"phpdoc_name";s:3:"str";}}s:4:"name";s:12:"rawurlencode";s:11:"description";s:80:"Encode URL-encoded strings. Used for everything *except* GET-parameter encoding.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"Encoded string.";}}s:7:"readdir";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"dir_handle";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:7:"Handle.";s:11:"phpdoc_name";s:10:"dir_handle";}}s:4:"name";s:7:"readdir";s:11:"description";s:33:"Read entry from directory handle.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:43:"Next filename (false: reached end already).";}}s:8:"realpath";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:26:"(Possibly) perceived path.";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:8:"realpath";s:11:"description";s:40:"Returns canonicalized absolute pathname.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"PATH";s:11:"description";s:12:"Actual path.";}}s:26:"register_shutdown_function";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:8:"callback";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:9:"Callback.";s:11:"phpdoc_name";s:8:"callback";}i:1;a:7:{s:4:"name";s:6:"parama";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"parama";}i:2;a:7:{s:4:"name";s:6:"paramb";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramb";}i:3;a:7:{s:4:"name";s:6:"paramc";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramc";}i:4;a:7:{s:4:"name";s:6:"paramd";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramd";}i:5;a:7:{s:4:"name";s:6:"parame";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"parame";}i:6;a:7:{s:4:"name";s:6:"paramf";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramf";}i:7;a:7:{s:4:"name";s:6:"paramg";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramg";}i:8;a:7:{s:4:"name";s:6:"paramh";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramh";}i:9;a:7:{s:4:"name";s:6:"parami";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"parami";}i:10;a:7:{s:4:"name";s:6:"paramj";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramj";}i:11;a:7:{s:4:"name";s:6:"paramk";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramk";}i:12;a:7:{s:4:"name";s:6:"paraml";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paraml";}i:13;a:7:{s:4:"name";s:6:"paramm";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramm";}i:14;a:7:{s:4:"name";s:6:"paramn";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramn";}i:15;a:7:{s:4:"name";s:6:"paramo";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramo";}i:16;a:7:{s:4:"name";s:6:"paramp";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramp";}i:17;a:7:{s:4:"name";s:6:"paramq";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:27:"Parameter (null: not used).";s:11:"phpdoc_name";s:6:"paramq";}}s:4:"name";s:26:"register_shutdown_function";s:11:"description";s:46:"Register a function for execution on shutdown.";s:5:"flags";a:0:{}}s:6:"rename";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"oldname";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:9:"Old name.";s:11:"phpdoc_name";s:7:"oldname";}i:1;a:5:{s:4:"name";s:7:"newname";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:9:"New name.";s:11:"phpdoc_name";s:7:"newname";}i:2;a:7:{s:4:"name";s:7:"context";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:57:"A stream context to attach to (null: no special context).";s:11:"phpdoc_name";s:7:"context";}}s:4:"name";s:6:"rename";s:11:"description";s:15:"Renames a file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:7:"require";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:36:"The filename of the file to require.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:7:"require";s:11:"description";s:72:"Require and evaluate the specified file (dies with error if it can not).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:33:"Success status or returned value.";}}s:12:"require_once";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:36:"The filename of the file to require.";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:12:"require_once";s:11:"description";s:116:"Require and evaluate the specified file (dies with error if it can not), but only if it has not been loaded already.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:33:"Success status or returned value.";}}s:5:"reset";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:10:"The array.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:5:"reset";s:11:"description";s:58:"Set the internal pointer of an array to its first element.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:31:"The value of the first element.";}}s:5:"rmdir";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"dirname";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:15:"Directory path.";s:11:"phpdoc_name";s:7:"dirname";}i:1;a:7:{s:4:"name";s:7:"context";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?resource";s:11:"description";s:57:"A stream context to attach to (null: no special context).";s:11:"phpdoc_name";s:7:"context";}}s:4:"name";s:5:"rmdir";s:11:"description";s:18:"Removes directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:5:"round";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:0;s:4:"type";s:5:"float";s:11:"description";s:15:"Value to round.";s:11:"phpdoc_name";s:3:"val";}i:1;a:7:{s:4:"name";s:9:"precision";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:61:"Number of decimal points of precision required (-ve allowed).";s:11:"phpdoc_name";s:9:"precision";}}s:4:"name";s:5:"round";s:11:"description";s:15:"Rounds a float.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Rounded value.";}}s:5:"rsort";a:5:{s:8:"filename";s:26:"sources_custom/phpstub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:18:"The array to sort.";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:5:"rsort";s:11:"description";s:31:"Sort an array in reverse order.";s:5:"flags";a:0:{}}s:5:"rtrim";a:6:{s:8:"filename";s:26:"sources_custom/phpstub.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:20:"String to trim from.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:10:"characters";s:7:"default";s:5:"
diff --git a/data_custom/modules/user_export/out.csv b/data_custom/modules/user_export/out.csv
index e69de29bb2..1b3838066c 100644
--- a/data_custom/modules/user_export/out.csv
+++ b/data_custom/modules/user_export/out.csv
@@ -0,0 +1,201 @@
+"Composr member ID","Username","E-mail address"
+"2","admin",""
+"3","test",""
+"4","5917100fb8d4c","5917100fb8d512.66082269@example.com"
+"5","591710112daed","591710112daf20.47119410@example.com"
+"6","591710114a158","591710114a15b8.66874434@example.com"
+"7","5917101163d75","5917101163d786.88007627@example.com"
+"8","5917101180a10","5917101180a153.55452066@example.com"
+"9","591710119a1ce","591710119a1d33.02935138@example.com"
+"10","59171011b8488","59171011b848c0.52485894@example.com"
+"11","59171011d305a","59171011d305e5.00514149@example.com"
+"12","59171011ed5a5","59171011ed5aa0.09203215@example.com"
+"13","59171012143b3","59171012143b78.62202249@example.com"
+"14","591710122fbf7","591710122fbfb2.72245933@example.com"
+"15","591710124dc46","591710124dc4a7.44603415@example.com"
+"16","591710126dd5b","591710126dd602.85451889@example.com"
+"17","591710128da2b","591710128da2f3.83649888@example.com"
+"18","59171012ae0d0","59171012ae0d53.42508332@example.com"
+"19","59171012cf65c","59171012cf6619.29835103@example.com"
+"20","59171012f0a2a","59171012f0a2d5.98272696@example.com"
+"21","591710131e088","591710131e08d7.29597366@example.com"
+"22","591710133fc0e","591710133fc125.06068501@example.com"
+"23","5917101361e7f","5917101361e826.66908889@example.com"
+"24","591710138ad0a","591710138ad0f3.70627862@example.com"
+"25","59171013addad","59171013addb02.36466380@example.com"
+"26","59171013daf2c","59171013daf318.44896405@example.com"
+"27","59171014067ba","59171014067be8.74671740@example.com"
+"28","591710142a286","591710142a28c1.91758308@example.com"
+"29","591710144e430","591710144e4335.73231128@example.com"
+"30","591710146f57c","591710146f5816.74544791@example.com"
+"31","5917101494a80","5917101494a852.38337858@example.com"
+"32","59171014ba7b3","59171014ba7b70.38954879@example.com"
+"33","59171014e000c","59171014e00106.45740097@example.com"
+"34","5917101511e79","5917101511e7d7.42405721@example.com"
+"35","5917101537fa1","5917101537fa56.80704097@example.com"
+"36","5917101569e31","5917101569e348.32933362@example.com"
+"37","59171015907cc","59171015907d02.77599589@example.com"
+"38","59171015b75ea","59171015b75ee3.98566330@example.com"
+"39","59171015db333","59171015db3388.98666577@example.com"
+"40","591710160fa52","591710160fa580.51463936@example.com"
+"41","59171016387f4","59171016387f90.50717419@example.com"
+"42","591710166142a","591710166142e2.72929759@example.com"
+"43","591710168a441","591710168a4454.13211539@example.com"
+"44","59171016afd2c","59171016afd310.90138083@example.com"
+"45","59171016d93d6","59171016d93dc3.35896769@example.com"
+"46","5917101710526","591710171052c5.62280698@example.com"
+"47","591710173aff2","591710173aff67.24030295@example.com"
+"48","5917101765ae5","5917101765aea4.29366476@example.com"
+"49","591710179a5f7","591710179a5fa3.78719040@example.com"
+"50","59171017c5804","59171017c580a8.59190452@example.com"
+"51","59171017f158e","59171017f15919.83756747@example.com"
+"52","59171018257cc","59171018257d06.11817213@example.com"
+"53","5917101852055","59171018520588.07332786@example.com"
+"54","591710187f39a","591710187f39d8.18993743@example.com"
+"55","59171018ac9aa","59171018ac9ae1.92489945@example.com"
+"56","59171018da6dd","59171018da6e11.00576563@example.com"
+"57","591710191f252","591710191f2554.39758179@example.com"
+"58","591710194dc6b","591710194dc717.18667255@example.com"
+"59","591710197d204","591710197d2077.25782583@example.com"
+"60","59171019b66fb","59171019b67019.25605691@example.com"
+"61","59171019e62a0","59171019e62a51.48878474@example.com"
+"62","5917101a2d7c1","5917101a2d7c77.17397987@example.com"
+"63","5917101a5dda9","5917101a5ddb09.80987463@example.com"
+"64","5917101a8f5ff","5917101a8f6057.66086087@example.com"
+"65","5917101acd735","5917101acd73b2.80387045@example.com"
+"66","5917101b0bf39","5917101b0bf412.87432787@example.com"
+"67","5917101b4d7db","5917101b4d7df3.46659864@example.com"
+"68","5917101b7f56c","5917101b7f5719.04871333@example.com"
+"69","5917101bb1ac7","5917101bb1acc6.78470538@example.com"
+"70","5917101be4d1f","5917101be4d229.94857644@example.com"
+"71","5917101c23d8f","5917101c23d939.44453249@example.com"
+"72","5917101c5821c","5917101c582203.40865429@example.com"
+"73","5917101c8b91b","5917101c8b9210.16259462@example.com"
+"74","5917101cc02a3","5917101cc02a86.12608769@example.com"
+"75","5917101d00479","5917101d0047d7.17827266@example.com"
+"76","5917101d35f68","5917101d35f6c1.58754645@example.com"
+"77","5917101d7f842","5917101d7f8461.27039177@example.com"
+"78","5917101db5603","5917101db56076.88089777@example.com"
+"79","5917101deb750","5917101deb7548.39728966@example.com"
+"80","5917101e2e398","5917101e2e39b1.66374186@example.com"
+"81","5917101e65ceb","5917101e65cef9.92420037@example.com"
+"82","5917101e9cd49","5917101e9cd4d4.53871599@example.com"
+"83","5917101ed483a","5917101ed483e0.82325601@example.com"
+"84","5917101f19107","5917101f1910b8.39303060@example.com"
+"85","5917101f51b50","5917101f51b558.70678070@example.com"
+"86","5917101f8a508","5917101f8a50c2.11923464@example.com"
+"87","5917101fc3076","5917101fc307a9.55746416@example.com"
+"88","5917102004cef","5917102004cf42.07746724@example.com"
+"89","59171020406f7","59171020406fc4.63767986@example.com"
+"90","5917102076825","591710207682a7.71568291@example.com"
+"91","59171020af49e","59171020af4a35.59244262@example.com"
+"92","59171020e6a8c","59171020e6a913.75847085@example.com"
+"93","591710212e9b5","591710212e9ba9.06393366@example.com"
+"94","5917102166c62","5917102166c660.93888940@example.com"
+"95","591710219dec3","591710219dec76.84052149@example.com"
+"96","59171021d61cf","59171021d61d56.86250292@example.com"
+"97","591710221b287","591710221b28b7.32099772@example.com"
+"98","591710225416d","59171022541712.43509825@example.com"
+"99","591710228e5fe","591710228e6028.00051412@example.com"
+"100","59171022c792f","59171022c79326.16988021@example.com"
+"101","591710230d838","591710230d83d6.42798241@example.com"
+"102","59171023555a4","59171023555a89.13797180@example.com"
+"103","5917102393c6b","5917102393c6f1.75077669@example.com"
+"104","59171023d2fbe","59171023d2fc37.52637247@example.com"
+"105","591710241e406","591710241e40a9.17690556@example.com"
+"106","591710245a674","591710245a6786.00527481@example.com"
+"107","591710249ac22","591710249ac262.91758701@example.com"
+"108","59171024db6ca","59171024db6d72.34554687@example.com"
+"109","5917102527ded","5917102527df14.59774558@example.com"
+"110","5917102565215","59171025652192.18743477@example.com"
+"111","59171025a70b4","59171025a70b80.11241235@example.com"
+"112","59171025e90b4","59171025e90b97.56441781@example.com"
+"113","59171026377a3","59171026377a88.84629008@example.com"
+"114","591710267a062","591710267a0685.38057118@example.com"
+"115","59171026bd2b6","59171026bd2bb6.04424492@example.com"
+"116","5917102709c52","5917102709c567.99226101@example.com"
+"117","591710274e081","591710274e0854.17678936@example.com"
+"118","59171027916d0","59171027916d32.40257607@example.com"
+"119","59171027d26e5","59171027d26e98.39997544@example.com"
+"120","5917102823759","591710282375d0.27529951@example.com"
+"121","5917102868566","59171028685866.08683749@example.com"
+"122","59171028a963d","59171028a96400.58367929@example.com"
+"123","59171028ef190","59171028ef1959.17167496@example.com"
+"124","59171029415ef","59171029415f34.96817683@example.com"
+"125","59171029880fb","59171029880fe1.99010458@example.com"
+"126","59171029cf635","59171029cf63a4.61585352@example.com"
+"127","5917102a1e97f","5917102a1e9830.21239359@example.com"
+"128","5917102a670f8","5917102a670fd0.97862978@example.com"
+"129","5917102aaedfb","5917102aaedff4.25025566@example.com"
+"130","5917102b0d4e3","5917102b0d4e73.94341597@example.com"
+"131","5917102b57c5c","5917102b57c615.63850728@example.com"
+"132","5917102ba0f6e","5917102ba0f723.03097219@example.com"
+"133","5917102bea482","5917102bea4855.64556374@example.com"
+"134","5917102c3f515","5917102c3f5196.83679454@example.com"
+"135","5917102c88a83","5917102c88a879.41765118@example.com"
+"136","5917102cd3ac0","5917102cd3ac57.36361375@example.com"
+"137","5917102d31c37","5917102d31c3b5.54293695@example.com"
+"138","5917102d7d10e","5917102d7d1129.04471521@example.com"
+"139","5917102dc7ea8","5917102dc7ead0.24368475@example.com"
+"140","5917102e1fff8","5917102e1fffc5.21890984@example.com"
+"141","5917102e674bd","5917102e674c00.46817925@example.com"
+"142","5917102eb36c6","5917102eb36ca3.46486404@example.com"
+"143","5917102f0a46b","5917102f0a46f4.03283526@example.com"
+"144","5917102f57836","5917102f5783b5.87571152@example.com"
+"145","5917102fa1648","5917102fa164d0.66199165@example.com"
+"146","5917102feea01","5917102feea047.13460332@example.com"
+"147","5917103044750","59171030447547.60364746@example.com"
+"148","5917103093279","59171030932800.70480362@example.com"
+"149","59171030de1cf","59171030de1d41.37099429@example.com"
+"150","5917103138942","59171031389465.82546231@example.com"
+"151","5917103184922","59171031849253.59710998@example.com"
+"152","59171031d4011","59171031d40175.92018131@example.com"
+"153","5917103233189","591710323318d0.17428958@example.com"
+"154","59171032849cd","59171032849d13.17656291@example.com"
+"155","59171032d58b5","59171032d58b98.59653105@example.com"
+"156","591710333393a","591710333393e2.18413306@example.com"
+"157","59171033853d2","59171033853d55.49441313@example.com"
+"158","59171033d40fa","59171033d41001.87943701@example.com"
+"159","5917103433440","59171034334446.86614216@example.com"
+"160","5917103486c8b","5917103486c920.32841675@example.com"
+"161","59171034d900a","59171034d900f4.66694389@example.com"
+"162","5917103537b79","5917103537b7d3.05650096@example.com"
+"163","591710358cf3b","591710358cf3f4.98612214@example.com"
+"164","59171035dd6d8","59171035dd6db6.59098713@example.com"
+"165","591710363e7e4","591710363e7e84.66519685@example.com"
+"166","5917103693e26","5917103693e2a0.69807164@example.com"
+"167","59171036e524e","59171036e52528.31050855@example.com"
+"168","5917103747125","59171037471296.23232232@example.com"
+"169","591710379d9d2","591710379d9d58.11141088@example.com"
+"170","59171038006c0","59171038006c54.41791817@example.com"
+"171","5917103857e83","5917103857e887.60519287@example.com"
+"172","59171038af537","59171038af53c0.57077231@example.com"
+"173","59171039136d3","59171039136d81.50250800@example.com"
+"174","591710396bcab","591710396bcae8.82900823@example.com"
+"175","59171039c0145","59171039c01493.11537936@example.com"
+"176","5917103a24ee9","5917103a24eed3.18569885@example.com"
+"177","5917103a7ead5","5917103a7ead92.29321303@example.com"
+"178","5917103ad8505","5917103ad85088.22507019@example.com"
+"179","5917103b3ddbb","5917103b3ddc03.88768916@example.com"
+"180","5917103b95fd0","5917103b95fd33.08445303@example.com"
+"181","5917103bf0eb0","5917103bf0eb48.70048371@example.com"
+"182","5917103c57860","5917103c578652.57013063@example.com"
+"183","5917103cb22d0","5917103cb22d48.39217535@example.com"
+"184","5917103d1a3ae","5917103d1a3b18.86624058@example.com"
+"185","5917103d762e6","5917103d762ea3.54945757@example.com"
+"186","5917103dcf62f","5917103dcf6338.71114637@example.com"
+"187","5917103e38511","5917103e385156.81112686@example.com"
+"188","5917103e95b73","5917103e95b783.87085639@example.com"
+"189","5917103ef3402","5917103ef34051.52271689@example.com"
+"190","5917103f5d95c","5917103f5d9623.42876078@example.com"
+"191","5917103fbc39e","5917103fbc3a38.29312463@example.com"
+"192","5917104027142","59171040271456.47555933@example.com"
+"193","5917104085c5e","5917104085c616.93803559@example.com"
+"194","59171040e5439","59171040e543e3.27093636@example.com"
+"195","5917104150fcf","5917104150fd24.73720818@example.com"
+"196","59171041acbf9","59171041acbfc6.87378007@example.com"
+"197","591710421a72c","591710421a74d3.69068423@example.com"
+"198","591710427bc78","591710427bc7c0.67278691@example.com"
+"199","59171042dd3a3","59171042dd3a96.19066762@example.com"
+"200","591710434ad36","591710434ad3b7.66087652@example.com"
+"203","test56",""
diff --git a/git-hooks/pre-commit b/git-hooks/pre-commit
index badd927dbf..242ec447b5 100644
--- a/git-hooks/pre-commit
+++ b/git-hooks/pre-commit
@@ -3,6 +3,8 @@
chdir(dirname(dirname(realpath(__FILE__))));
+file_put_contents('data_custom/modules/user_export/out.csv', '');
+
if (git_repos() == 'composr_homesite') {
$issues = shell_exec('php delete_alien_files.php git_only');
diff --git a/sources/catalogues.php b/sources/catalogues.php
index 60d9431b82..c066fa155b 100644
--- a/sources/catalogues.php
+++ b/sources/catalogues.php
@@ -1271,7 +1271,7 @@ function _get_catalogue_entry_field($field_id, $entry_id, $type = 'short', $only
if ($query != '') {
$query .= ' UNION ';
}
- $query .= 'SELECT f.id AS f_id,'.db_cast('v.cv_value', 'CHAR');
+ $query .= 'SELECT f.id AS f_id,' . db_cast('v.cv_value', 'CHAR');
if (!multi_lang_content()) {
if (strpos($table, '_trans') !== false) {
$query .= ',v.cv_value__text_parsed,v.cv_value__source_user';
diff --git a/sources/comcode_renderer.php b/sources/comcode_renderer.php
index 6fbbecb154..9a402337f3 100644
--- a/sources/comcode_renderer.php
+++ b/sources/comcode_renderer.php
@@ -1681,7 +1681,7 @@ function _do_tags_comcode($tag, $attributes, $embed, $comcode_dangerous, $pass_i
$attributes['target'] = '_blank';
}
if (array_key_exists('rel', $attributes)) {
- $rel = trim($rel . ' ' . $attributes['rel']);
+ $rel = trim($attributes['rel']);
} else {
$rel = '';
}
diff --git a/sources/hooks/systems/addon_registry/core_configuration.php b/sources/hooks/systems/addon_registry/core_configuration.php
index a141068cf1..d3caabd91f 100644
--- a/sources/hooks/systems/addon_registry/core_configuration.php
+++ b/sources/hooks/systems/addon_registry/core_configuration.php
@@ -178,6 +178,7 @@ public function get_file_list()
'sources/hooks/systems/config/automatic_meta_extraction.php',
'sources/hooks/systems/config/bcc.php',
'sources/hooks/systems/config/bottom_show_feedback_link.php',
+ 'sources/hooks/systems/config/autogrow.php',
'sources/hooks/systems/config/bottom_show_rules_link.php',
'sources/hooks/systems/config/bottom_show_privacy_link.php',
'sources/hooks/systems/config/bottom_show_sitemap_button.php',
diff --git a/sources/hooks/systems/ecommerce/catalogue_items.php b/sources/hooks/systems/ecommerce/catalogue_items.php
index 0c8d27a21c..990ef10f03 100644
--- a/sources/hooks/systems/ecommerce/catalogue_items.php
+++ b/sources/hooks/systems/ecommerce/catalogue_items.php
@@ -712,11 +712,11 @@ public function get_custom_product_map_fields($id, &$map)
/**
* Update order status,transaction ID after transaction.
*
- * @param AUTO_LINK $entry_id Purchase/Order ID.
+ * @param ID_TEXT $entry_id Purchase/Order ID.
* @param array $details Details of product.
*/
function handle_catalogue_items($entry_id, $details)
{
$object = object_factory('Hook_ecommerce_catalogue_items');
- $object->update_stock($entry_id, 1);
+ $object->update_stock(intval($entry_id), 1);
}
diff --git a/sources/hooks/systems/fields/codename.php b/sources/hooks/systems/fields/codename.php
index cfe76539bd..ed83b2bacc 100644
--- a/sources/hooks/systems/fields/codename.php
+++ b/sources/hooks/systems/fields/codename.php
@@ -175,7 +175,7 @@ public function get_field_random($field_id, $default = '')
if (!addon_installed('catalogues')) {
break;
}
- $test = $GLOBALS['SITE_DB']->query_select_value_if_there('catalogue_efv_integer', 'ce_id', array('cv_value' => $value, 'cf_id' => $field_id));
+ $test = $GLOBALS['SITE_DB']->query_select_value_if_there('catalogue_efv_short', 'ce_id', array('cv_value' => $value, 'cf_id' => $field_id));
} while (!is_null($test));
return $value;